Skip to content

代码重启app的方法

修改日期:2022-5-24
  • 2022-5-24:增加说明
  • 2022-2-3 创建文档

使用PackageManager实现重启app的功能。

具体步骤是,先startActivity启动自己app,然后退出当前进程。

public static void triggerRebirth(Context context) {
    PackageManager packageManager = context.getPackageManager();
    Intent intent = packageManager.getLaunchIntentForPackage(context.getPackageName()); // (1)
    ComponentName componentName = intent.getComponent();
    Intent mainIntent = Intent.makeRestartActivityTask(componentName); // (2)
    context.startActivity(mainIntent);
    Runtime.getRuntime().exit(0); // (3)
}
  1. 会先去找注册了android.intent.category.INFO的activity,然后找android.intent.category.LAUNCHER
  2. 创建的intent用来重启app
  3. 退出当前进程

参考: https://stackoverflow.com/questions/6609414/how-do-i-programmatically-restart-an-android-app

本站作者: rustfisher.com | rf.cs@foxmail.com
示例地址: AndroidTutorial Gitee, Tutorial Github | 反馈问题: -> Android issues - gitee
本文链接: https://www.an.rustfisher.com/android/pm/restart-App/ |-> 本站文章最近更新
一家之言,仅当抛砖引玉。如有错漏,还请指出。下方的广告链接内容与本站无关。如果喜欢本站的内容,也可 -> 点击请作者喝咖啡 ,谢谢支持服务器。