2013-07-06 118 views
1

我想讓我的Android應用程序對包含藍牙OOB設置記錄的NFC標籤做出反應。我的清單包含:Android:我可以使用MIME-Type vnd.bluetooth.ep.oob過濾NFC標籤嗎?

<!-- intent filter for matching an NDEF MIME message. --> 
<intent-filter> 
    <action android:name="android.nfc.action.NDEF_DISCOVERED"/> 
    <category android:name="android.intent.category.DEFAULT"/> 
    <data android:mimeType="application/vnd.bluetooth.ep.oob"/> 
</intent-filter> 

但是,當我掃描標籤時,應用程序不會啓動,而是啓動藍牙連接。有沒有辦法在我的應用程序中處理這些標籤? (注意:對於例如URI標記的其他意圖過濾器對於啓動我的應用程序工作正常,所以它可能特定於此MIME類型。)

回答

0

也許您可以使標記將URI記錄添加到NDEF的第一條記錄信息。因爲第一條記錄是NDEF消息的類型。然後你可以使用URI意圖過濾器。

1

由於這是一個Android Application Record,它繞過所有過濾器。 你可以做然而,就是讓你的活動實施Foreground Dispatch

利用這一點,你就會有你的活動開放,以攔截意圖,其中您會收到

public void onNewIntent(Intent intent) 

在使用意圖過濾方法時,這些意圖通過onResume()傳遞,儘管這種情況有所不同。 使用Foreground Dispatch時,通過onNewIntent(Intent intent)發送標籤時,應用程序實際處於活動狀態。

過濾器類型標籤通過onResume()傳遞,因爲應用程序從其他地方啓動。根據標籤,意圖會有不同的動作,您可以在the Android SDK Docs閱讀所有內容。

+0

是否所有帶有MIME類型'application/vnd.bluetooth.ep.oob'的AAR的NDEF消息? –

相關問題