2012-03-30 7 views
0

Ich schrieb eine Anwendung über NFC in Android, aber ich habe ein Problem. Wenn ich ein NFC Tag in der Nähe des Mobiltelefons nehme, erscheint ein Dialogfeld, in dem ich auswählen kann, welche Anwendung die Informationen aus dem NFC-Tag lesen soll. Aber ich will dieses Dialogfeld nicht, ich möchte nur, dass, wenn ein NFC Tag in der Nähe des Mobiltelefons ist, wird die Anwendung, die ich schrieb, automatisch geöffnet. Ich habe versucht, den Code zu ändern:Wie ändere ich den Standard Weg zu öffnen Anwendung

<intent-filter android:priority = "100"> 
    <action android:name="android.nfc.action.TECH_DISCOVERED" />     
</intent-filter> 
<meta-data android:name="android.nfc.action.TECH_DISCOVERED" 
    android:resource="@xml/filter_nfc"/> 
+2

Warum gehen Sie davon aus, dass die Benutzer das überhaupt wollen? Die ganze Idee hinter Intents bei Android ist es, den Benutzer wählen zu lassen, was sie für die beste Anwendung halten. – Matthias

+0

Diese App ist für meine Firma geschrieben, um bestimmte Informationen in NFC-Tag zu lesen, so dass ich nicht –

+0

in Ordnung, okay genug wählen müssen! – Matthias

Antwort

0

Der einzige Weg für Android zu bestimmen, welche App zu öffnen automatisch, wenn Android den Inhalt des Tags selbst lesen kann. Dies ist nur möglich, wenn das Tag einem der NFC Forum Type Tag-Standards entspricht und eine NDEF-Nachricht enthält. In diesem Fall sendet Android eine ACTION_NDEF_DISCOVERED Absicht, die Daten enthält, die auf dem Inhalt des Tags basieren, z. B. ein URI oder ein MIME-Typ. Ihre App kann basierend darauf einen Absichtsfilter deklarieren, um eine solche Absicht zu erhalten. Wenn der MIME-Typ oder URI eindeutig ist, ist Ihre App die einzige, die übereinstimmt und automatisch geöffnet wird.

Wenn die NFC-Tags, mit denen Sie arbeiten, keine NDEF-Nachricht enthalten, haben Sie im Wesentlichen kein Glück. Es gibt keine Möglichkeit für Android, etwas Spezielleres als die Technologie des Tags zu bestimmen, und es wird oft mehrere Apps geben, die solche Absichten abonniert haben. So wird dem Benutzer eine App-Auswahl angezeigt, um die richtige App auszuwählen.

+0

vielen Dank –

Verwandte Themen