Android - 如何以编程方式重新启动system_process?

标签 android restart

我有一个 Android 设备,它将我的应用程序作为系统应用程序运行。在这个应用程序中有一个更新功能,它从互联网上下载新版本的apk,然后覆盖设备上的apk。之后我需要重新启动应用程序...这是我的问题,我尝试了很多方法:

finish();

Intent i = getBaseContext().getPackageManager().getLaunchIntentForPackage(getBaseContext().getPackageName() );   
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK );
startActivity(i);

System.exit();

android.os.Process.killProcess(pid);

我注意到,如果我在 Eclipse 中停止 system_process,我的设备将重新启动,应用程序将升级并且新版本的应用程序将运行。 所以我的问题是,如何以编程方式停止/重新启动 system_process?或者您有什么好主意来重新启动并运行我的新版本应用程序吗? 谢谢:)

最佳答案

谢谢。它有魔力! :)

PowerManager pm = (PowerManager) this.getApplicationContext().getSystemService(Context.POWER_SERVICE);
pm.reboot("bootloader");

关于Android - 如何以编程方式重新启动system_process?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25758884/

相关文章:

安卓位置更新

android - 检测用户是否与手机交互?

android - 无法连接到远程调试器

android - 如何从命令行启动 Android 测试单元

java - 位图大小超出 Android 中的 VM 预算

java - 在新手机上重新启动之前,Android GPS 无法工作

ios - OpenGL 改变方向导致 iPad 重启

c++ - 服务重启后套接字未释放

C#进程重启循环

java - 宽度和高度为 match_parent 的 Recyclerview 返回固定大小错误