画面がオンかオフかをフィルタリングし、画面がオンのときにアクティビティを起動するアプリで作業していますが、アクティビティを起動してもアクティビティがすでに開始されている場合があります。アクティビティが既に開始されているかどうかをアプリ内で知る方法。
アクティビティを開始すると、このコードを追加しました
intent11.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
どうもありがとう。
画面がオンかオフかをフィルタリングし、画面がオンのときにアクティビティを起動するアプリで作業していますが、アクティビティを起動してもアクティビティがすでに開始されている場合があります。アクティビティが既に開始されているかどうかをアプリ内で知る方法。
アクティビティを開始すると、このコードを追加しました
intent11.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
どうもありがとう。
アクティビティのライフサイクルで変数を設定できると思います
class IAMActivity extends Activity {
static boolean isStart = false;
public void onStart() {
super.onStart();
isStart = true;
}
public void onStop() {
super.onStop();
isStart = false;
}
}
探しているものは次のとおりです。
class MyActivity extends Activity {
static boolean alreadyLaunched = false;
@Override
public void onStart() {
super.onStart();
alreadyLaunched = true;
}
@Override
public void onStop() {
super.onStop();
alreadyLaunched = false;
}
}
アクティビティを 1 つのインスタンスに制限する場合は、要件に応じてlaunchMode
、マニフェスト ファイルで をsingleTask
またはのいずれかに設定できます。singleInstance
<activity
android:launchMode="singleTask"
...>
...
</activity>
の代わりに新しいインテントを使用singleTask
して配信されます。onNewIntent()
onCreate()
詳細については、 <アクティビティ>を参照してください。