首页 > 解决方案 > 如何杀死当前的应用程序并打开 Playstore?

问题描述

我想要的是......如果应用程序没有使用最新版本,则会弹出一个对话框,让用户知道应用程序需要更新。如果他们单击OK按钮,current app则被杀死并playstore打开

这就是我实施的。

    private fun openPlaystoreAndKill() {
        try {
            startActivity(Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=$packageName")))
        } catch (anfe: ActivityNotFoundException) {
            startActivity(Intent(Intent.ACTION_VIEW, Uri.parse("https://play.google.com/store/apps/details?id=$packageName")))
        }finally {
            killApp()
        }
    }

    /**
     * Kill the app forcefully
     */
    private fun killApp(){
//        finishAffinity()
        finishAndRemoveTask()
        System.runFinalizersOnExit(true)
        System.exit(0)
    }
  1. finishAffinity() - 这会终止活动。但不是过程。
  2. finishAndRemoveTask() - 这会杀死应用程序。但是这家店打不开。
  3. finishAffinity() + finishAndRemoveTask() - 与 1 相同。
  4. finishAndRemoveTask() + finishAffinity() - 与 2 相同。

我怎样才能达到我想要的?

标签: androidandroid-intent

解决方案


推荐阅读