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

时间:2014-09-10 06:40:52

标签: 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?或者您有任何好主意重新启动并运行我的新版本应用程序? 谢谢:)

1 个答案:

答案 0 :(得分:2)

THX。它真的很神奇! :)

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