android-重启应用程序强制关闭

时间:2012-04-02 14:56:32

标签: android forceclose

我开发了一个使用一些外部开源项目的应用程序。现在我确保没有应用程序强行关闭的地方。但是,我不想冒险考虑外部开源应用程序。我想确保如果我的应用程序强制关闭,我从一开始就重新启动应用程序。

我在网上搜索了一个解决方案,我能找到的最好的是here。但是我真的无法理解如何实现它......

我见过许多应用程序在关闭时打开第一个屏幕,所以你能给我一些帮助吗?

2 个答案:

答案 0 :(得分:2)

您发布的链接是实现此目的的方法。如果您添加Android Application(如果尚未添加),则最好。在此处注册UncaughtExceptionHandler您的应用内onCreate方法:

//Inside your ApplicationClass
public void onCreate(){
    Log.v("MyApplication", "onCreate triggered")
    Thread.setDefaultUncaughtExceptionHandler(new UncaughtExceptionHandler(){
         public void uncaughtException(Thread thread, Throwable ex){
             Log.v("MyApplication", "onUncaughtException triggered. Error:")
             ex.printStackTrace()
             //restart your app here like this
             Intent i = new Intent(this, TheClassYouWannaStart.class);
             getApplicationContext().startActivity(i);
         }
    });
}

答案 1 :(得分:0)

我假设你的意思是服务。如果你的应用程序始终存在,我会讨厌你。但是对于服务,只需使用START_STICKY标志启动它。

实施例

public MyAmazingService extends Service {
    @Override public int onStartCommand(Intent intent, int arg1, int arg2) {
        // Doing some amazing stuff
        return START_STICKY;
    }
}