Wie zu Lesen von erkannten NFC-tag (NDEF-Nachricht). Android NFC
Ähnliche Frage - Wie zu Lesen erkannt, NFC-tag (NDEF Inhalt) details in android?
Ich möchte meine android app in der Lage sein zu Lesen und zu analysieren, erkannte NDEF-Nachricht.
Habe ich bereits bearbeitet AndroidManifest.xml um zu erkennen, nfc-tags, und ich habe die Absicht filter sieht es so aus
<intent-filter>
<action android:name="android.nfc.action.TAG_DISCOVERED"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
Ich glaube, das ist in Ordnung, wenn ich den NFCDemo Beispiel-app, kommt mit dem SDK zu erstellen, MockNDEFtags, wenn die Liste der Anwendungen, die ich wählen kann mit diesen generierten tags meiner app angezeigt wird.
Ich habe dann klicken Sie auf meine app und es öffnet sich ohne problem, ich brauche nur eine Möglichkeit zum Lesen der Daten, die übergeben wurde, um es in die NDEF-Nachricht. Der code:
Tag myTag = (Tag) nfcintent.getParcelableExtra(NfcAdapter.EXTRA_TAG);
//get NDEF tag details
Ndef ndefTag = Ndef.get(myTag);
...
NdefMessage ndefMesg = ndefTag.getCachedNdefMessage();
wurde vorgeschlagen, in einer ähnlichen Frage und im web finde ich viele ähnliche Antworten.
Mein problem mit der code-Zeile
"Tag myTag = (Tag) nfcintent.getParcelableExtra(NfcAdapter.EXTRA_TAG);"
Bekomme ich die Fehlermeldung "nfcintent kann nicht aufgelöst werden"
Ich merke, dass der Autor des Codes wahrscheinlich bringen nfcintent als Platzhalter für einen Vorsatz speziell für meine app jedoch im nicht sicher, was ich soll an Ihre Stelle setzen.
Meiner mainactivity startet meine app sieht wie folgt aus
public class TabsActivity extends TabActivity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TabHost tabHost = getTabHost();
//Tab for Graph
TabSpec graphspec = tabHost.newTabSpec("Graph");
//setting Title and Icon for the Tab
graphspec.setIndicator("Graph");
Intent graphIntent = new Intent(this, GraphActivity.class);
graphspec.setContent(graphIntent);
//Tab for Intro
TabSpec introspec = tabHost.newTabSpec("Intro");
introspec.setIndicator("Intro");
Intent introIntent = new Intent(this, IntroActivity.class);
introspec.setContent(introIntent);
//Adding all TabSpec to TabHost
tabHost.addTab(introspec); //Adding intro tab
tabHost.addTab(graphspec); //Adding graph tab
}
}
Ich gehe davon aus, da dies startet die app es ist, wo der NFC-tag behandelt werden muss. Wenn ich nur Zugriff auf die NDEFMessage aus dem tag-ich habe bereits die Fähigkeit zu analysieren, es mit dem NdefMessageParser aus dem android Beispiel-app. Ich möchte analysieren, die Informationen von der NDEFmessage und letztlich, dass die Informationen zugänglich, die von jedem tab in der app.
InformationsquelleAutor curtisq | 2012-07-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen, dieses Snippet extrahieren Meldung von Tag :
Schauen Sie sich auch dieses Beispiel für NFC Reader/Writer
InformationsquelleAutor Venky
Um die Absicht, der vergeht, den NFC-tag starten Sie die Aktivität in meinem Fall "nfcintent" nur verwenden
InformationsquelleAutor curtisq