アプリケーションのルート アクティビティ用に 2 つのインテント フィルタがあります
<activity
android:name=".MyActivity"
android:label="@string/app_name"
android:theme="@android:style/Theme.Dialog" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.nfc.action.NDEF_DISCOVERED" />
<data android:mimeType="application/com.example.package" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
1 つのフィルターはランチャー アイコンからアプリケーションを起動するためのもので、もう 1 つはユーザーが NFC タグに触れたときにアクティビティを起動するためのものです。
ユーザーがアプリケーションの任意のアクティビティから HOME ボタンを押したときに、次にランチャー アイコンを押すか、NFC タグに触れたときに、アプリケーションを再開する必要があります (すべてのアプリケーションの場合と同様)。
ユーザーが NFC タグをタップすると、最初のアクティビティが開始されます。その後、彼はさらなる活動に進みます。ホームを押します。NFC タグをもう一度タップすると、最初のアクティビティ (MyActivity) が開始され、以前のスタックがクリアされます。
一方、ユーザーがランチャー アイコンを選択し、別のアクティビティに移動して [ホーム] を押し、ランチャー アイコンをもう一度押すと、MyActivity がスタックの一番上で新しいアクティビティとして開始されます。(現在、スタックには 2 つの MyActivity があります)。