2017-06-29 66 views
2

當「註銷」按鈕被點擊時,應用程序正在清除所有數據。清除應用程序數據後如何啓動活動?

private void deleteAppData() { 
    try { 
     // clearing app data 
     String packageName = context.getPackageName(); 
     Runtime runtime = Runtime.getRuntime(); 
     runtime.exec("pm clear " + packageName); 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 
} 

如何爲runtime.exec設置一些監聽器完成?執行完成後,我想打開Splash活動。現在,應用只能關閉。

問題:如何在runtime.exec完成後啓動活動?

+0

清除數據開始啓動活動後。 –

+1

使用asynctask並在onPostExecute方法中啓動活動 – Rahul

+0

是的,如何識別我已完成清算?這就是我想要達到的目標 –

回答

0

我認爲你應該在註銷活動的OnDestroyonStop()中這樣做,因爲startActivity(i)將在運行時清除數據後調用,然後應用程序將轉換爲其他活動。

0

在開始新活動後,立即使用startActivity,確保調用finish(),以便當前活動不會疊加在新活動的後面。

Intent mIntent = new Intent(mContext,MainActivity.class); 
finishAffinity(); 
startActivity(mIntent); 
+0

問題是關於如何識別何時運行。 exec完成 –

+0

正常情況下,在清除prefrence值後將清除prefrence值,它將重定向到特定的活動,就像他可以做的一樣。同時你提到「當執行完成時,我想打開Splash活動,現在應用程序只關閉。 「爲了回答 –

+0

除了首選項,我還有SQLite數據庫和內部存儲文件。這就是爲什麼我想要刪除所有數據 –

相關問題