2012-02-22 5 views
1

私はAndroid 2.3 Nexus Sデバイス用にJavaでコーディングしています。最近購入したNFCリーダー/ライターを発見しようとすると問題が発生しています。私のマニフェストファイルでは、私はAndroidを使用してNFC技術(タグだけでなく)を発見するには?

<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/nfc_tech_filter" /> 

を使用しています、私がやろうとしているすべては、NFC技術のいくつかの並べ替えが周り/利用可能であることを発見です。私の携帯電話をNFCリーダー/ライターに近づけると、ログレジスタ「dalvikm」と「AudioHardware」のタグでイベントの並べ替えを見ることができます。しかし何らかの理由で、意図が私の活動を開始しません。私のアプリはNFCの機能を持つ唯一のアプリケーションです - 私のデフォルトなどを確認して確認してください。私の活動では、私は単に基本的なレイアウトとのonCreateメソッドと一緒に使用しています:

@Override 
public void onNewIntent(Intent intent) { 
    // TODO 
Toast.makeText(this, "NFC TECH DISCOVERED!", Toast.LENGTH_LONG).show(); 
} 

私は少なくともアクティビティが起動するように期待したいです。なぜこのisntのアイデアですか?たぶん私はこれをNFCリーダーで振っていて、実際に見つけられたNFCタグではないからです。なぜアプリがNFC対応のデバイスがあることを少なくとも認めないのか分かりません。

リソースファイルが含まれています:「android.nfc.action.TECH_DISCOVERED」で

<?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>android.nfc.tech.Ndef</tech> 
    <tech>android.nfc.tech.MifareUltralight</tech> 
    <tech>android.nfc.tech.NfcA</tech>   
    <tech>android.nfc.tech.IsoDep</tech> 
    <tech>android.nfc.tech.NdefFormatable</tech> 
</tech-list> 
</resources> 
+0

ところで、あなたの技術者リストは、これらのさまざまなコミュニケーションのすべてを満たすタグを探していました。また、あなたのリーダーはタグをエミュレートできますか?いくつかすることができます。 (または少なくともNXPチップを評価するためのテストボードは、リーダーとしても機能してもタグをエミュレートすることもできます) –

答えて

1

をTECHは、NFCタグにハイテクを参照いNFCデバイス、すなわちを意味するものではありません。 MifareClassic、UltraLightなど。これはタグではないため、あなたのリーダー/ライターを認識できません。

NexusがカスタムROMをインストールせずにタグとして動作できないため、デスクトップNFCリーダー/ライターがNexusと通信するのに苦労していると思います。読み書きができず、ほとんどのデスクトップリーダーはタグとして動作できないため、読み書きができません。多分あなたはP2P通信をすることができるかもしれませんが、私はまだこれが多くの作業を必要とすると考えています。

どのNFCリーダー/ライターがありますか?

+0

私はACR122Uを持っています。したがって、Starbucksなどの商用アプリケーションにインストールされているリーダ/ライターの場合、タグが埋め込まれているのですか、これはP2P通信の一種ですか? – codedawg82

+0

私はこのブログで私が得ることができる最も役に立つと思います - http://hwit.bitstacks.com/2011/08/31/nfc-with-the-nexus-s-and-acr122-reader/ – codedawg82

+0

こんにちはピーナッツ、あなたが私の最初の質問に答えたので答えとしてマークしています。携帯電話と端末の間でP2P接続を試みたい人は、前のコメントのリンクを参照するか、役立つリンクを投稿してください。ありがとう! – codedawg82

1

また、nfc_tech_filterファイルに間違いがあります。テックリストの少なくとも1つは、通信したいタグでサポートされている技術のサブセットでなければなりません。少ない技術者でより多くの技術者リストを使用する必要があります。 ANDとORの原則はこのように実装されています。

あなたのカードリーダでは、ピーナッツの答えが主な問題です。

関連する問題