2012-07-28 30 views
0

我正在开发一款使用NFC打开活动的Android应用程序。因此,我们用特定的MIME-Type编写了NFC标签,就像API示例中那样,所以只有我的应用可以打开其中的数据。 Android 2.3.3在Android 4.0.4上运行得很好。NFC标签未在Android 4.1中打开应用程序果冻豆

现在,在我将Samsung Galaxy Nexus升级到Android 4.1 Jelly Bean后,NFC标签不再打开我的应用程序。有趣的是,手机在默认的Android nfc阅读器中显示标签时,会识别该标签的MIME类型。

所以问题是......为什么应用程序不是由Android 4.1 Jelly Bean中的NFC标签打开的?

我AndroidMenifest.XML意图代码:

<activity 
     android:name=".ActivityToOpenWithNfcTag" 
     android:screenOrientation="portrait"> 
     <intent-filter> 
      <action android:name="android.nfc.action.NDEF_DISCOVERED" /> 
      <category android:name="android.intent.category.DEFAULT" /> 
      <data android:mimeType="application/com.android.barcodeScanner" /> 
     </intent-filter> 
    </activity> 

如果我使用“text/plain的” MIME类型的标签和它的作品的应用程序,但我需要我的唯一MIME类型。

请帮忙! 谢谢。

回答

3

我有同样的确切问题,我发现在果冻豆,它将mimetype转换为所有小写字母。我在你的mimetype标签中看到它有一个大写的"S"

那么试试这个来代替:

mimeType = "application/com.android.barcodescanner"

希望这有助于:)

0

在JellyBean中,来自标签的NDEF检测和解析已得到改进并变得更加严格。可能你的NDEF信息在某种程度上是无效的。检查例如NDEF消息内的净荷长度值,并将其与标签上存储的总NDEF消息长度进行比较。

相关问题