Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/235.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 识别NFC标签ID_Android_Nfc - Fatal编程技术网

Android 识别NFC标签ID

Android 识别NFC标签ID,android,nfc,Android,Nfc,我正在尝试使用以下代码识别android上NFC标签的唯一标识符: @SuppressLint("NewApi") @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Tag myTag = (Tag) getIntent().getParcelableExtra(N

我正在尝试使用以下代码识别android上NFC标签的唯一标识符:

@SuppressLint("NewApi")
@Override
protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
 Tag myTag = (Tag) getIntent().getParcelableExtra(NfcAdapter.EXTRA_TAG);
 String nFCID = myTag.getId().toString();   
 Toast.makeText(getApplicationContext(), "NFC id is: "+ nFCID, Toast.LENGTH_SHORT).show();      
}
不幸的是,当我将应用程序部署到真实设备并扫描NFC标记时,我的应用程序将崩溃,并声明“不幸的是,xyz必须停止…”。 我知道getID()将返回字节数组,我必须将其解析为字符串。但至少我希望这段代码返回一些值,而不是使应用程序崩溃。有没有办法解决这个问题

编辑:LogCat输出:

W/dalvikvm(25548): threadid=1: thread exiting with uncaught exception group=0x41b652a0)
E/AndroidRuntime(25548): FATAL EXCEPTION: main
E/AndroidRuntime(25548): java.lang.RuntimeException: 
Unable to start activity ComponentInfo{com.xyz.nfcid/com.xyz.nfcid.MainActivity}: 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2100)

我很确定,你的标签是空的。您应该首先检查操作字符串

String action = intent.getAction();
if (NfcAdapter.ACTION_NDEF_DISCOVERED.equals(action)) {
    //... do something
}

我已经写了一个完整的,应该会对您有所帮助。

您确定myTag不为null吗?如果您在onResume()上这样做会发生什么?我确定标记不为null。使用“NFC TagInfo”应用程序,我检查了标签是否有NDEF消息,以启动我的应用程序的主要活动。我现在将查看您的教程。出现异常的原因是什么?请向我们提供stacktrace。刚刚在主要问题中添加了LogCat输出。应该有更多输出。你添加了NFC权限了吗?