完全にAndroidアプリ/活動を開始し、新鮮な、それが起動または再開するたびに?
-
26-09-2019 - |
質問
私は、Androidのための子供のアプリを持っていると、アプリが(それは小さな子供のためです)基本的には、ナビゲーションを持っていないため、このアプリケーションのためのいくつかのユニークな考慮事項があります。私が辞め/再起動]ボタンを追加することによって、私のアプリ(iPhone上で成功している)UIを壊したくない。
私が本当に必要なのは非常に簡単です - 私は私の活動/アプリは、それが起動するごとに、単一の時間をきれいにして、新しい開始したいです。それが最初のロードまたは何だかどうかは、 - 基本的にonResumeが呼び出され、いつでも私は私のアプリの完全新鮮なインスタンスをしたいです。
私は当初、アプリユーザーの葉を終了/終了/私はちょうど終了できると思っていました。しかし、私は起動時にクラッシュを起こさないよう、これを行うための方法を発見していません。また、そのアイデアについてすべてのスレッド/スタックオーバーフローポストは、人々が自分の指を振ると、あなたがAndroid上のアプリを終了することはありませんと言って充填されている。
私はアプリのフォーカス喪失時に終了することができない場合は、、私はonResumeが呼び出されるたびに、私の活動を再開するために行うことができるものはありますか? (またはそれが無限ループだろうか?)。
でしょうが、大幅に任意の助けに感謝!
解決
onResume
であなたの主な活動を開始し、活動のスタックをクリアしてみます:
public void onResume() {
super.onResume();
startActivity(new Intent(this, MainScreen.class).addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP));
}
多分これらは、追加するcorrectlフラグではなく、他のIntent
フラグをチェックアウトして、これはあなたが欲しいものを行うことができます!
他のヒント
onPauseでフィニッシュを()を呼び出すことで、作業の罰金にそれを取得することになりました()。
繰り返しますが、私は「これはAndroidが物事をどうするかではありません」と言って人々からのアドバイスに感謝します。私はこの時点でのベストプラクティスのかなり良い理解を持っています。これは、ユーザーの珍しいタイプの異常事態である。
あなたのリロード中にあなたがこれを試すことができます..
onStop();
onCreate(getIntent().getExtras());