2012-03-30 13 views
0

私はアンドロイドにNFCについてのアプリケーションを書いたが、問題がある。 NFCタグを携帯電話に近づけると、NFCタグから情報を読み取るアプリケーションを選択できるようにするダイアログボックスが表示されます。しかし、私はこのダイアログボックスを望んでいません。NFCタグが携帯電話の近くにあると、私が書いたアプリケーションが自動的に開きます。あなたがAndroidはオープンにどのアプリを判断するの...それは...他の人の代わりにhttp://developer.android.com/guide/topics/nfc/nfc.html#ndefアプリケーションを開くデフォルトの方法を変更する方法

+2

なぜユーザーはそれを望んでいると思われますか? Androidのインテントの背後にある考え方全体は、使用するのに最適なアプリケーションだと思うものをユーザーに選択させることです。 – Matthias

+0

このアプリはNFCタグで指定された情報を読むために私の会社のために書かれているので、選択する必要はありません –

+0

大丈夫です! – Matthias

答えて

0

唯一の方法は、あなたのアプリを開きますユニークなURIを設定すると

<intent-filter android:priority = "100"> 
    <action android:name="android.nfc.action.TECH_DISCOVERED" />     
</intent-filter> 
<meta-data android:name="android.nfc.action.TECH_DISCOVERED" 
    android:resource="@xml/filter_nfc"/> 
+0

ありがとう –

0

:私はにコードを変更してみました自動的に、Androidがタグの内容を自分自身で読むことができるかどうかです。これは、タグがNFCフォーラムタイプタグ標準の1つに従い、NDEFメッセージを含む場合にのみ可能です。その場合、AndroidはACTION_NDEF_DISCOVEREDインテントを送信します。これには、URIやMIMEタイプなどのタグの内容に基づくデータが含まれます。あなたのアプリは、このような意図を受け取るためにこれに基づいてインテントフィルタを宣言することができます。 MIMEタイプまたはURIが一意である場合、あなたのアプリは唯一のもので、自動的に開かれます。

作業中のNFCタグにNDEFメッセージが含まれていない場合、基本的に運が悪いです。 Androidがタグの技術よりも具体的なものを特定する方法はなく、そのような意図に登録したアプリが複数あることがよくあります。そのため、適切なアプリを選ぶために、ユーザーにアプリチューザーが表示されます。

関連する問題