Android- перезапустите приложение на принудительное закрытие - PullRequest
0 голосов
/ 02 апреля 2012

Я разработал приложение, которое использует некоторые внешние проекты с открытым исходным кодом. На данный момент я убедился, что нет места, где приложение принудительно закрылось бы. Однако я не хочу рисковать, рассматривая внешние приложения с открытым исходным кодом. Я хочу убедиться, что если в случае закрытия моего приложения я перезапущу приложение с самого начала.

Я искал в сети решение, и лучшее, что я смог найти, было здесь . Однако я действительно не мог понять, как это реализовать ...

Я видел много приложений, которые открывают первый экран при принудительном закрытии, так что вы можете мне помочь?

Ответы [ 2 ]

2 голосов
/ 02 апреля 2012

Ссылка, которую вы разместили, является способом сделать это. Лучше всего будет, если вы добавите приложение Android , если его еще нет. Зарегистрируйте 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);
         }
    });
}
0 голосов
/ 02 апреля 2012

Я предполагаю, что вы имеете в виду обслуживание.Если бы у вас было приложение, которое всегда было представлено, я бы вас ненавидела.Но для службы просто запустите ее с флагом START_STICKY .

Пример

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