[英]Android NFC Tag Read. intent always null
我正在嘗試打開應用程序(掃描標簽時自動打開)時讀取NFC標簽,但似乎無法讀取有效載荷。 實際上,我似乎根本找不到標簽。 我使用了另一個應用程序來讀取標簽的mime類型和有效載荷-一切似乎都很好。
道歉,如果這很明顯-我已經閱讀了文檔並在發布之前檢查了其他各種資源,但無濟於事。
我看不到任何錯誤,並且代碼可以正常編譯。 下面的代碼。 Logcat顯示:
08-30 20:15:50.248: E/Activity...(3703): Hello world. Intent Type: null
08-30 20:15:50.248: E/Activity...(3703): Hello world. Intent Type: null
:
package com.spotsofmagic.spotsofmagic;
import android.app.Activity;
import android.app.AlertDialog;
import android.bluetooth.BluetoothAdapter;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.content.Intent;
import android.nfc.NdefMessage;
import android.nfc.NdefRecord;
import android.nfc.NfcAdapter;
import android.os.Bundle;
import android.os.Parcelable;
import android.util.Log;
import android.widget.TextView;
public class MainActivity extends Activity implements OnClickListener {
private static final String TAG = "Activity...";
private NfcAdapter mAdapter;
private TextView mTextView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_activity);
// grab our NFC Adapter
mAdapter = NfcAdapter.getDefaultAdapter(this);
// TextView that we'll use to output messages to screen
mTextView = (TextView)findViewById(R.id.text_view);
displayMessage("Loading payload...");
// see if app was started from a tag and show game console
Intent intent = getIntent();
Log.e(TAG, "Hello world. Intent Type: "+ intent.getType());
清單文件;
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="14" /> <uses-permission android:name="android.permission.NFC" /> <uses-permission android:name="android.permission.BLUETOOTH" /> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" /> <uses-feature android:name="android.hardware.nfc" android:required="true" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <activity android:name=".MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".CardActivity" android:label="@string/app_name" > <!-- Handle a collectable card NDEF record --> <intent-filter> <action android:name="android.nfc.action.NDEF_DISCOVERED"/> <data android:mimeType="application/vnd.spotsofmagic.bluetoothon"/> <category android:name="android.intent.category.DEFAULT"/> </intent-filter> </activity> </application>
NFC意圖過濾器用於CardActivity,而不用於MainActivity。 因此,我希望問題出在CardActivity中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.