Android:如何在应用程序被“强制关闭”后自动重新启动应用程序?

在Android应用程序中,如果我们没有获得正确的异常,我们通常会得到“强制关闭”错误。

如果强制关闭,如何自动重新启动应用程序?

有没有任何具体的权限用于这个?

如果你调用Thread.setDefaultUncaughtExceptionHandler()将会输入uncaughtException(),以防你的应用程序崩溃。 “强制关闭”不会出现,应用程序将无响应,这不是一个很好的事情。
为了重新启动应用程序时崩溃,你应该做以下事情:

在onCreate方法中,在您的主要活动中初始化一个PendingIntent成员:

intent = PendingIntent.getActivity(YourApplication.getInstance().getBaseContext(), 0,
            new Intent(getIntent()), getIntent().getFlags());

比在你的uncaughtException()方法:

AlarmManager mgr = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
mgr.set(AlarmManager.RTC, System.currentTimeMillis() + 2000, intent);
System.exit(2);

不调用System.exit()将不工作。此代码将在2秒后重新启动应用程序。

最终你可以设置一些标志在你的意图,应用程序崩溃,在你的onCreate()方法,你可以显示一个对话框“对不起,应用程序崩溃,希望永远不会:)”。

http://stackoverflow.com/questions/2681499/android-how-to-auto-restart-application-after-its-been-force-closed

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:Android:如何在应用程序被“强制关闭”后自动重新启动应用程序?