关闭当前activity
之前遇到一个问题也有人问过的,当打开多个Activity(之前的没关闭)时,如何在当前的Activity退出程序呢?我们都知道最简单的是finish(),但这只是关闭当前的Activity,并不是退出整个程序。有人说用System.exit(1),我自己也试过用Process.killProcess(Process.myPid())。但都不理想,有时 work,有时不起作用只是关闭当前的Activity,具体什么原因没去研究过。
最近在做别的东西时突然想到一个方法,不啰嗦,看代码。
- final ActivityManager am = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
- am.restartPackage(getPackageName());
final ActivityManager am = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE); am.restartPackage(getPackageName());
再加上uses-permission
- <uses-permission android:name="android.permission.RESTART_PACKAGES"></uses-permission>
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步