2016-08-03 148 views
1

我想通過NFC卡啓動特定的Android應用程序。我不想讓android問我應該打開哪個應用程序。它應該立即打開我的應用程序。我怎麼能這樣做?使用NFC啓動特定的Android應用程序

我已經用MIME-Types試過了,但沒有奏效。我可以指定我自己的MIME-Type嗎?是否可以檢查MIME-Type文本/平原的特定文本(意向過濾器?)?

例如:我希望我的應用程序在NFC卡具有像「test」或其他東西存儲的特定文本時啓動。

這個想法是它應該適用於所有常見的移動操作系統。因此,Android應用程序鏈接將無法工作。

+0

的可能的複製[啓動NFC時,發現特定APP(http://stackoverflow.com/questions/27712115/launch-specific-app-when-nfc-is-discovered) –

回答

0

您可以創建自己的應用程序mimeType。

您可以在您的NDEF消息中創建一個自定義mimeType,然後創建一個完全匹配它的意圖過濾器。這意味着你的應用程序將被啓動,因爲它是最具體的過濾器。

例子:

<intent-filter> 
    <action android:name="android.nfc.action.NDEF_DISCOVERED" /> 
    <category android:name="android.intent.category.DEFAULT" /> 
    <data android:mimeType="application/vnd.com.my.app.package.customString" /> 
</intent-filter> 

從前面的例子摘自我在這裏提供:https://stackoverflow.com/a/27397938/3312868

+0

這隻適用於我猜測的Android設備。也許我應該用NdefRecord createEternal(string domain,String type,byte [] data)創建一個外部NDEF類型。這可以工作嗎? –

+0

我不熟悉Windows手機,但你不能註冊一個特定的mimeType嗎?如果你想創建一個外部記錄,請看看Michael Roland的評論。 – jgriffin

+0

我已經解決了這個問題。您可以創建自己的MIME類型。有了這個MIME類型,你可以啓動你的應用程序。感謝您的幫助。 –