2

(singleInstance、singleTask、singleTop) が必要な目的を果たすいくつかのアプリケーション例、またはユースケースは何ですか。つまり、なぜ 1 つの launchMode を他のものより優先するのでしょうか? これまでのところ、それらを使用した私の経験は厳密にメモされているため、それらがどこで使用されているかを理解するのに役立ちます. ありがとう!

4

1 に答える 1

1

アクティビティの複数のインスタンスを起動できないことを意味することが知られていることを理解しています。

私の例でsingleInstanceは、メインのランチャーActivityでを使用していFragmentsます。

ユーザーが「ホーム」ボタンに触れた後にバックグラウンドに送信された場合Activity、最後に表示されたフラグメントが表示されるため、通知インテントを介してバックグラウンドから起動したくありません。を設定singleInstanceすると、常にアクティビティの新しいインスタンスが起動され、メイン フラグメントが表示されます。

私の場合singleTask、アプリの他のアクティビティをスタックに保持しているため使用できませんが、メインのアクティビティを一番上に置きます。スタックにその履歴は必要ありません。

singleTopスタックの最上位にない場合にのみ、アクティビティで新しいインスタンスを起動します。それが上にある場合は、バックグラウンドから起動します。これは、私のアプリでは必要ありません。

私が明確だったことを願っています:)

于 2015-11-09T19:46:56.187 に答える