Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/213.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/27.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标签启动的_Android_Nfc_Intentfilter_Ndef_Launching Application - Fatal编程技术网

Android 活动不是由NFC标签启动的

Android 活动不是由NFC标签启动的,android,nfc,intentfilter,ndef,launching-application,Android,Nfc,Intentfilter,Ndef,Launching Application,我已经在活动的清单文件中声明了必需的意图过滤器 情景1: 当我使用NFCDemo android示例应用程序->宽频播放nfc标签->进行测试时,我的应用程序会像其他nfc应用程序一样在选择器对话框中提示nfc标签信息和NXP标签信息 情景2: 在刷完真正的NFC标签(卡)->NFC TagInfo后,TagInfo应用程序会在选择器对话框中出现提示,但我的应用程序没有 我的要求->我的应用程序也应该像NFC标签信息应用程序一样显示。 更多信息->这是一张空卡 <intent-filter

我已经在活动的清单文件中声明了必需的意图过滤器

情景1: 当我使用NFCDemo android示例应用程序->宽频播放nfc标签->进行测试时,我的应用程序会像其他nfc应用程序一样在选择器对话框中提示nfc标签信息和NXP标签信息

情景2: 在刷完真正的NFC标签(卡)->NFC TagInfo后,TagInfo应用程序会在选择器对话框中出现提示,但我的应用程序没有

我的要求->我的应用程序也应该像NFC标签信息应用程序一样显示。 更多信息->这是一张空卡

<intent-filter>
    <action android:name="android.nfc.action.NDEF_DISCOVERED" />
    <category android:name="android.intent.category.DEFAULT" />
    <data android:mimeType="*/*" />
</intent-filter>
<intent-filter>
    <action android:name="android.nfc.action.TAG_DISCOVERED" />
    <category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<intent-filter>
    <action android:name="android.nfc.action.TECH_DISCOVERED" />
    <category android:name="android.intent.category.DEFAULT" />
</intent-filter>    
<meta-data
    android:name="android.nfc.action.TECH_DISCOVERED"
    android:resource="@xml/supporting_nfc_techlist" />

仅当您的NFC标记包含与筛选器匹配的NDEF消息时,才会触发发现的NDEF\u意向筛选器。通常,您应该为特定记录类型(例如,特定MIME类型、特定NFC论坛外部类型名称或特定URI(-prefix))指定筛选器。对“*/*”使用MIME类型筛选器在某些设备上不起作用

在应用程序清单中通常不应使用发现的
标记
意图过滤器。在当前的Android版本中,它主要与前台调度系统一起使用,如果没有为任何标记发现事件注册其他活动,则作为备用

TECH\u DISCOVERED
intent过滤器将过滤那些在supporting\u nfc\u techlist.xml文件中定义的标记技术。例如,如果要检测任何标记,可以使用如下过滤器:

<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
  <tech-list>
    <tech>android.nfc.tech.NfcA</tech>
  </tech-list>
  <tech-list>
    <tech>android.nfc.tech.NfcB</tech>
  </tech-list>
  <tech-list>
    <tech>android.nfc.tech.NfcF</tech>
  </tech-list>
  <tech-list>
    <tech>android.nfc.tech.NfcV</tech>
  </tech-list>
  <tech-list>
    <tech>android.nfc.tech.IsoDep</tech>
  </tech-list>
  <tech-list>
    <tech>android.nfc.tech.MifareClassic</tech>
  </tech-list>
  <tech-list>
    <tech>android.nfc.tech.MifareUltralight</tech>
  </tech-list>
  <tech-list>
    <tech>android.nfc.tech.NdefFormatable</tech>
  </tech-list>
  <tech-list>
    <tech>android.nfc.tech.Ndef</tech>
  </tech-list>
  <tech-list>
    <tech>android.nfc.tech.NfcBarcode</tech>
  </tech-list>
</resources>

是指
NfcA
NfcB
(一种不能作为
NfcX
的组合(X={a,B,F,V})技术类型是互斥的。

只有当NFC标记包含与筛选器匹配的NDEF消息时,才会触发发现的
NDEF\u
意向筛选器。您通常应为特定记录类型指定筛选器(例如,为特定MIME类型、特定NFC论坛外部类型名称或特定URI)(-prefix))。对“*/*”使用MIME类型筛选器在某些设备上不起作用

TAG_DISCOVERED
intent过滤器通常不应在应用程序清单中使用。在当前的Android版本中,它主要用于前台调度系统,如果没有为任何标记发现事件注册其他活动,则作为备用

TECH\u DISCOVERED
intent过滤器将过滤那些在supporting\u nfc\u techlist.xml文件中定义的标记技术。例如,如果要检测任何标记,可以使用如下过滤器:

<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
  <tech-list>
    <tech>android.nfc.tech.NfcA</tech>
  </tech-list>
  <tech-list>
    <tech>android.nfc.tech.NfcB</tech>
  </tech-list>
  <tech-list>
    <tech>android.nfc.tech.NfcF</tech>
  </tech-list>
  <tech-list>
    <tech>android.nfc.tech.NfcV</tech>
  </tech-list>
  <tech-list>
    <tech>android.nfc.tech.IsoDep</tech>
  </tech-list>
  <tech-list>
    <tech>android.nfc.tech.MifareClassic</tech>
  </tech-list>
  <tech-list>
    <tech>android.nfc.tech.MifareUltralight</tech>
  </tech-list>
  <tech-list>
    <tech>android.nfc.tech.NdefFormatable</tech>
  </tech-list>
  <tech-list>
    <tech>android.nfc.tech.Ndef</tech>
  </tech-list>
  <tech-list>
    <tech>android.nfc.tech.NfcBarcode</tech>
  </tech-list>
</resources>

是指
NfcA
NfcB
(一种不能作为
NfcX
的组合(X={a,B,F,V})技术类型相互排斥。

您的空卡是否为NDEF格式?PS:向我们展示您的支持\u nfc\u技术列表file@VGe0rge,问题仅在支持nfc技术列表中,Michale Roland answer帮助我解决了问题。谢谢你,VGE0RGE你的空卡是否为NDEF格式?PS:显示你的支持nfc技术列表file@VGe0rge,问题在于仅支持nfc技术列表,Michale Roland answer帮助我解决了问题。谢谢VGe0rge@Michale罗兰,我做了一个改变,用你提供的内容替换了我支持的\u nfc\u techlist.xml的内容,我的应用程序显示在对话框列表中。然后我比较了两个文件,不同的是,你提到了每个ech在单独的tehc列表标签中输入,我将所有内容组合在一个技术列表标签中。非常感谢您的回答,这对我很有帮助me@Michale罗兰,谢谢迈克尔的精彩解释。我正在考虑如何有效地使用技术列表,现在你的答案澄清了。@Michale Roland,我做了一个改变,替换了我支持的nfc技术列表的内容st.xml与您提供的内容一致,我的应用程序显示在对话框列表中。然后我比较了这两个文件,不同的是,您在单独的tehc列表标记中提到了每种技术类型,我将所有内容分组在一个技术列表标记中。非常感谢您的回答,这对我有所帮助me@Michale罗兰,谢谢迈克尔的精彩解释随着思考如何有效地使用技术列表,现在您的答案变得清晰了。
<tech-list>
  <tech>android.nfc.tech.NfcA</tech>
  <tech>android.nfc.tech.NfcB</tech>
</tech-list>