我有一個分佈到一系列應用程序中的應用程序。我想向用戶提供一種清除其用戶數據的方法。要做到這一點,我希望每個應用程序清除它的用戶數據。我有這部分工作正常。有沒有編程式重新啓動Android應用程序的方式
我的問題是,一旦我清除了用戶數據,是否有重新啓動應用程序的方式,以便恢復的設置生效?
我有一個分佈到一系列應用程序中的應用程序。我想向用戶提供一種清除其用戶數據的方法。要做到這一點,我希望每個應用程序清除它的用戶數據。我有這部分工作正常。有沒有編程式重新啓動Android應用程序的方式
我的問題是,一旦我清除了用戶數據,是否有重新啓動應用程序的方式,以便恢復的設置生效?
This Jan Jonas的博客文章提供了關於如何以編程方式重新啓動應用程序的很好的說明。
的方法是創建一個重新開始的意圖,並將其添加到報警經理,有時間偏移(所以它不會立即發生。
AlarmManager mgr = (AlarmManager)ACTIVITY.getSystemService(Context.ALARM_SERVICE);
mgr.set(AlarmManager.RTC, System.currentTimeMillis() + 1000, RESTART_INTENT);
Intent i = getBaseContext().getPackageManager().getLaunchIntentForPackage(getBaseContext().getPackageName());
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);
idk爲什麼這個對我來說永遠不會工作:(。我刪除了應用程序的數據,然後調用它,但是恢復不生效。並自己殺了應用程序。 – user1509803 2014-01-14 01:59:09
爲什麼你不能只是'finish()'和'startActivity()'' – Fixpoint 2012-02-23 16:38:25