阅读量:1
要实现Android应用一键重启,可以使用以下代码:
public void restartApp() { Intent intent = new Intent(getApplicationContext(), MainActivity.class); int mPendingIntentId = 123456; PendingIntent mPendingIntent = PendingIntent.getActivity(getApplicationContext(), mPendingIntentId, intent, PendingIntent.FLAG_CANCEL_CURRENT); AlarmManager mgr = (AlarmManager) getSystemService(Context.ALARM_SERVICE); mgr.set(AlarmManager.RTC, System.currentTimeMillis() + 100, mPendingIntent); System.exit(0); }
在需要重启的地方调用 restartApp()
方法即可。这个方法会创建一个 PendingIntent
,并设置一个延迟时间,然后使用 AlarmManager
发送一个闹钟事件,当闹钟事件触发时,会启动指定的 MainActivity
,从而实现应用的重启。
注意事项:
- 要使用这段代码,需要在
AndroidManifest.xml
文件中为MainActivity
添加相应的<intent-filter>
,确保其他的Activity
不会被重启。 - 由于使用了
System.exit(0)
,这个方法会直接退出应用,如果需要保存一些数据或状态,需要在退出前进行相应的处理。