2017-01-17 1 views
0

アクティビティが破棄されると、そのすべてのメモリを解放したいので次のとき ユーザがこのアクティビティにアクセスするまでの時間がすべて再作成され、onCreateが再び呼ばれた。 どうすればいいですか?どのように私はアクティビティを完全にディスパッチできますか?したがって、onCreateは再び呼び出されます

+0

onDestroyの後に呼び出されます – gilgil28

答えて

0

APIバージョン19以上で動作します。

@Override 
protected void onDestroy() { 
super.onDestroy(); 
// clear App data 
((ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE)).clearApplicationUserData(); 
// restart activity here 
activityrestart(); 
} 

public void activityrestart() 
{ 
Intent i = getBaseContext().getPackageManager() 
     .getLaunchIntentForPackage(getBaseContext().getPackageName()); 
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
startActivity(i); 
} 
+0

私はAPIバージョン19をサポートする必要があります。しかし、結局私はすべて手動でリリースしました。ありがとうございました。 – Kreator

0

アクティビティの新しいインテントを作成し、この新しいインスタンスを開始した後にfinishを呼び出します。それは通常のシャットダウンプロセスを通過させるために、現在の活動にfinish()を呼び出す

Intent intent = new Intent(this, MyActivity.class); startActivity(intent); finish();

関連する問題