2

アイコンをクリックして(通常の方法で)起動し、NFCタグをスキャンすることで起動できるAndroidアプリを作成しようとしています。どちらの方法でも同じ (メイン) アクティビティにつながる必要があります。

それはどちらか、または私のためであることが判明しました: MainActivity と MAIN アクション (以下の AndroidManifest を参照) にアクション NDEF_DISCOVERED を追加し、電話にアプリを再インストールすると、アプリのアイコンはどこにも表示されなくなり、私は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>

私は何か間違ったことをしていますか?それは可能ですか、それとも Main アクティビティは単一のアクションによってのみトリガーされますか? (Android doc によると、インテント フィルター オブジェクトには 1..n アクションを含めることができます...)。

4

1 に答える 1

3

インテント フィルタを次のように変更します。

<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"/>
</intent-filter>
<intent-filter>
            <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>
于 2013-01-10T14:26:24.923 に答える