android nfc intent-filter pour montrer à ma demande lors de la nfc découvrir un tag
Je suis en train d'écrire une application qui fonctionne avec la technologie NFC et de la CARTE MIFARE.
Quand mon appareil NFC détecter une carte, il me montre la liste des applications qui peuvent utiliser la technologie NFC, mais ma demande n'est pas mentionné.
Ce qui me manque sur mon android fichier manifest?
<uses-permission android:name="android.permission.NFC" />
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="17" />
<uses-feature
android:name="android.hardware.nfc"
android:required="true" />
<application
android:icon="@drawable/ic_launcher" android:allowBackup="true"
android:label="@string/app_name" android:theme="@style/AppTheme" >
<activity android:uiOptions="splitActionBarWhenNarrow"
android:name="it.namespace.app.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.TECH_DISCOVERED" />
<action android:name="android.nfc.action.TAG_DISCOVERED" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<meta-data
android:name="android.nfc.action.TECH_DISCOVERED"
android:resource="@xml/tech_filter" />
</activity>
</application>
Et c'est mon tech_filter fichier xml:
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" >
<tech-list>
<tech>
android.nfc.tech.MifareClassic
</tech>
</tech-list>
</resources>
Voici l'image qui montre que ma demande n'est pas dans la liste:
OriginalL'auteur michele | 2013-05-12
Vous devez vous connecter pour publier un commentaire.
J'ai eu le même problème, et je l'ai fixée sur la base de cette phrase dans android doc http://developer.android.com/guide/topics/connectivity/nfc/nfc.html#tech-disc
"Si votre activité filtres pour le ACTION_TECH_DISCOVERED intention, vous devez créer un XML fichier de ressources qui spécifie les technologies que votre activité prend en charge au sein d'une tech-liste. Votre activité est considérée comme un match si un tech-liste est un sous-ensemble des technologies qui sont pris en charge par l'étiquette, que vous pouvez obtenir en appelant getTechList().
Par exemple, si l'étiquette numérisée, prend en charge MifareClassic, NdefFormatable, et NfcA, technologie, votre liste doit préciser tous les trois, deux, ou de l'une de ces technologies (et rien d'autre) pour que votre activité pour être égalé."
votre nfc_tech_list besoins pour définir un sous-ensemble des technogies pris en charge par la balise courante.
-définir votre manifeste, comme ceci:
-définir le xml nfc_check_list comme ceci:
Cela fonctionnera parfaitement.
Pour les autres, si vous voulez savoir "tech-liste" que votre balise est de soutenir, vous pouvez utiliser l'application appelée "NFC TagInfo" pour vérifier.
OriginalL'auteur Raoul Foaleng
Avez-vous créé une tech-liste de ressources?
À partir de: http://developer.android.com/guide/topics/connectivity/nfc/nfc.html#tech-disc
Si vous filtrez sur android.nfc.d'action.NDEF_DISCOVERED à la place d'android.nfc.d'action.TECH_DISCOVERED, vous n'avez pas besoin d'une tech-liste.
Ce que vous avez actuellement devrait tomber par le biais de l'android.nfc.d'action.TAG_DISCOVERED (voir le diagramme sur la page de référence).
Il est très probable que l'application de la liste est générée car toutes ces apps poignée NDEF_DISCOVERED. L'intention générale de la technologie NFC, répartiteur est de créer une Intention et de le livrer à la première application qui correspondent. L'application sélecteur est affichée uniquement lorsque plusieurs applications du filtre. En passant par le tableau des flux de elle ressemble la correspondance s'arrête lorsqu'un correspondant de l'action a pu être envoyé.
Essayez d'ajouter une action pour android.nfc.d'action.NDEF_DISCOVERED, il est possible que vous disposez de plusieurs applications de filtrage, et la liste est basée sur les applications.
mmm comment puis-je le faire? Je ne suis pas sûr que je comprends.
Ajouté à la réponse. Je suis intéressé par la résolution de moi-même. Juste reçu tous mes tags NFC et un Arduino Shield cette semaine (en plus j'ai une Nexus 7). J'ai un projet qui aura besoin de tout cela. 🙂
mmmmm pas encore de travail
OriginalL'auteur Erik Nedwidek
Ce faire, pensez ÉGALEMENT À ajouter pour AJOUTER l'autorisation
sur manifest.xml
OriginalL'auteur user7567645