首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Tag = intent.getParcelableArrayExtra(NfcAdapter.EXTRA_TAG);

Tag = intent.getParcelableArrayExtra(NfcAdapter.EXTRA_TAG);
EN

Stack Overflow用户
提问于 2016-04-22 14:50:02
回答 1查看 2K关注 0票数 1

在将NFC功能添加到我的应用程序之后,我遇到了一个奇怪的错误。我听过很多指南和教程,他们有这一行,

代码语言:javascript
复制
Tag tag = intent.getParcelableArrayExtra(NfcAdapter.EXTRA_TAG);

这不能工作,因为标记需要一个标记,但它正在接收一个Parcelable对象。我不知道我是不是错过了什么,或者为什么其他人似乎在工作,而不是我的。

全法

代码语言:javascript
复制
private void handleIntent(Intent intent)
{
    String action = intent.getAction();
    if(NfcAdapter.ACTION_NDEF_DISCOVERED.equals(action))
    {
        String type = intent.getType();
        if (mime_Text_plain.equals(type))
        {
           Tag tag = intent.getParcelableArrayExtra(NfcAdapter.EXTRA_TAG);
            new NdefReader().execute(tag);
        }
        else
        {
            Log.d(TAG, "Wrong MIME Type!");
        }
    }else if (NfcAdapter.ACTION_TECH_DISCOVERED.equals(action))
    {
        Tag tag = intent.getParcelableArrayExtra(NfcAdapter.EXTRA_TAG);
        String[] nfclist = tag.getTechList();
        String searchedNFC = Ndef.class.getName();

        for (String nfc: nfclist)
        {
            if (searchedNFC.equals(nfc))
            {
                new NdefReader().execute(tag);
                break;
            }
        }
    }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-22 14:54:32

您应该使用Tag tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);而不是Tag tag = intent.getParcelableArrayExtra(NfcAdapter.EXTRA_TAG);

第一个返回标记对象,第二个返回数组。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36796983

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档