問題タブ [nfc-p2p]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
nfc - Android SNEP サーバーはフラグメンテーションをサポートしていますか?
フラグメント化された SNEP メッセージを Android に送信した経験のある人はいますか?
NFC フォーラム仕様で定義されている SNEP フラグメンテーションを使用して、大きな SNEP メッセージを Android に送信しようとしました (SNEP 仕様ドキュメントの図 3 と図 6 に示されています)。
最初のフラグメント (完全な SNEP ヘッダー + データ チャンク) を送信した後、android は Continue 応答で応答します。SNEP 仕様で定義されているように、残りのデータ (ヘッダーなし) を Android に送信します。すべてのデータが送信された後、アンドロイドは完全な応答を返しません。私の間違った送信シーケンスまたは android が SNEP フラグメンテーションをサポートしていないためですか?
私はAndroid 4.1.2でGoogle Nexus Sを使用し、独自のSDKを備えた中国のメーカーのリーダーを使用しています。
android - Android : NFC プロトコルの優先度を変更するには?
NFC タグと ISO-14443 タイプ A タグを読み書きする独自の Android アプリ (アプリ A) があります。多くの Android デバイスで問題なく動作します。
Nexus5 に ISO-14443 タグの役割を与えたいので、Nexus5 に独自の HCE (ホスト カード エミュレーション) アプリケーション (アプリ B) を実装しました。外部 NFC リーダー (ISO 14443 を使用) で Nexus5 に触れると、完全に機能します。
ただし、Nexus7 (アプリ A を実行) で Nexus5 (アプリ B) に触れると、p2p (Android ビーム) データ交換シーケンスが開始されます。
両方のデバイスで Android ビーム機能をオフにしても、何も変わりません。Nexus7 では「Touched to Beam」画面は表示されませんが、p2p 検出音は再生されます。
LogCat は、Nexus7 が LLCP 接続を確立しようとしていることを示しています。
Nexus7 が、Android ビームではなく、Nexus5 の ISO-14443 HCE の検出に集中することを望んでいます。
NFC 検出の優先度を変更して、Android ビームよりも ISO-14443 を優先するにはどうすればよいですか?
android - NFC 経由で Android から Windows Phone に URL を送信すると、Play ストアのリンクが提供されます
NFC を使用して、Android アプリから WP8 電話に URL を送信しようとしています。
Android デバイスに送信すると、URL が正しく送信されます。ただし、WP8 に送信すると、IE は、送信したいリンクではなく、Play ストアへのリンクを読み込みます (例: " http://www.stackoverflow.com ")。
Play ストアのリンクは「https://play.google.com/store/apps/details?id=com.example.conductrnfc&feature=beam」です。「com.example.conductrnfc」はプロジェクト内のパッケージ名です。
NFC メッセージを生成するために使用したコードを以下に示します。ここで、WP8 との互換性を損なう何か間違ったことをしていますか?
nfc-p2p - llcp-dep p2p の発見と接続
pn532を nfc 電話に接続する学校のプロジェクトに取り組んでいます。私は Seeedstudio nfc コントローラとそれらが持っているライブラリを使用しており、いくつかのコードを追加しています。私の質問は、プロトコルの接続と検出段階に関連しています。
質問 1: イニシエーターがCONNECT コマンドを DSAP = 1「ディスカバリー サービス」に送信した場合の応答。以下に、プロトコルの結果を説明します。
テストに使用した電話は (gs4、注 2):
状況 1:
- 電話は私に05 20 06を送信します。これは、受信側デバイスの SAP =1 への CONNECT コマンドです。次に、CC コマンド81 84 2 2 0 78で応答します。
- 次に、フォアグラウンドでアプリケーションの URI を含む IPDU が送信され、nfc フォーラムで llcp-snep プロトコルに従ってコマンドを送信し続け、すべてがクールに終了します。*問題は、フォアグラウンドでアプリケーションの URI が必要ないことです。代わりに、そのアプリケーションのNDEF メッセージデータが必要です。
状況 2:
- 電話は pn532 11 20に送信します。これは、受信側デバイスの SAP =4 への CONNECT コマンドです。次に、コマンドCC 81 84 2 2 0 78で応答します。
この後、電話は想定どおりにNDEFデータを送信してくれます。
今私の質問は次のとおりです。
電話から CONNECT コマンドが SAP =1 に送信されたり、SAP=4 に送信されたりするのはなぜですか?
05 20 06に対してどのコマンドに応答する必要がありますか?
android - Androidフォンを使用してNFCデバイスのタイプを検出するには?
Android NFCで、ある電話がタグ、P2Pの別の電話、またはホステッドエミュレータモードの別の電話を含む他のNFCデバイスのタイプを検出する方法を知っている人はいますか? コードでは、メッセージはすべて NdefMessage から送信されていますが、メッセージがどの種類のデバイスから送信されたかを宣言している場所はありますか?
android - nfc リーダー (acr122) はどのように私の電話を検出しますか?
acr122リーダー、CD、およびカードを備えたACR122U SDKを購入し、テストしようとしています。リーダーは LED ライトを赤から緑に変えることでカードを検出しますが、携帯電話 (NFC がオン) をリーダーに近づけても何も起こりません。
リーダーに自分の電話を検出させるにはどうすればよいですか? 携帯電話を非接触型カードとして機能させるには、携帯電話に Java カード アプレットをインストールする必要がありますか?
android - NFC カード エミュレーションの問題 S3 (Android 4.3) および ACR122U
私たちのプロジェクトでは、NFC リーダー ACS ACR122U で ISO14443-3 PICC をエミュレートし、そのカードを NFC 電話 (Samsung S3 または S4) で読み取ろうとしています。S4 の場合、エミュレートされたカードと正常に通信できますが、S3 の場合、NFC イベントはありません。
S3 が LLCP 通信をアクティブ化できないことを示す Android (logcat) からのすべてのコマンド/応答とログを記録しました。私たちが持っているすべてのデータを投稿しています。問題の解決にご協力ください。
ACR122u (リーダー内の PN532 コントローラー) へのコマンド/応答:
応答D58D08E080は、次のようにエミュレートされたカード リーダーを示します。
- ISO/IEC 14443-4 PICC --> はい
- DEP --> いいえ
- フレーミング タイプ --> ミファーレ
S4 をリーダーに配置すると、次のログが表示されます。
ただし、S3 を使用しようとすると、次のログのみが取得されます。
また、NFC イベントに登録している Android アプリは起動されません。S3 とカード リーダー間の互換性の問題か、S3 の NFC 実装の問題のようです。
両方とも同じ OS バージョン (つまり、Android 4.3) を使用している場合に、2 つの電話間で通信の違いが生じる理由を教えてください。S3 が「LLCP アクティベーション メッセージ」を超えないのはなぜですか?
私たちが使用している両方の電話のシステム情報は、ここで見つけることができます
android - Android ビーム: ウェブ バージョンへのフォールバックを使用してアプリ内リンクを共有する
次のような方法でa を構築する方法はありNdefMessageますか:
- 私のアプリが受信側デバイスにインストールされている場合は、そのリンクを開きます (たとえば、カスタム URI スキームを使用します)。
- アプリがインストールされていない場合は、モバイル Web サイトの同じページへのリンクを使用してデフォルトの Web ブラウザーを開きます
私はこれらを別々に動作させましたが、2 つNdefRecordを aに入れNdefMessage 、Android Beam 経由でプッシュされるように設定すると、レシーバー デバイスはこれら 2 つのレコードを含むセレクターを表示します。これらのいずれかをクリックすると、適切なアプリ (my app または Chrome) に移動します。このセレクターをバイパスして、サポートされている最初のリンクを自動的に起動する方法はありますか?