我正在尝试创建一个可以通过单击图标(通常方式)和扫描 NFC 标签来启动的 Android 应用程序。两种方式都应该导致相同的(主要)活动。
事实证明它要么适合我,要么适合我:如果我为我的 MainActivity 以及 MAIN 操作添加操作 NDEF_DISCOVERED(请参阅下面的 AndroidManifest)并在手机上重新安装应用程序,那么应用程序图标不再出现在任何地方,我只能使用 NFC 标签启动应用程序。
<application
android:label="@string/app_name"
android:icon="@drawable/icon">
<activity
android:name=".activity.MainActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
<action android:name="android.nfc.action.NDEF_DISCOVERED" />
<data
android:host="webofthings.org"
android:scheme="http" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<activity android:name=".activity.PhotoActivity"/>
<activity android:name=".activity.ProductDescriptionActivity"/>
</application>
难道我做错了什么?这是否可能,或者主要活动只能由单个动作触发?(根据 Android 文档,intent-filter 对象可以包含 1..n 个动作...)。