5

NFC経由でURLを送信して、Android携帯の受信電話のブラウザで開くことができるようにしたい. これは可能なアクションですか?

4

4 に答える 4

4

数時間頭を悩ませ、多数の投稿を閲覧した後。NdefCallbacks を実装し、「createNdefMessage」メソッドで uri を設定するだけでよいことがわかりました。

最初に NdefCallbacks を実装します

public class MyActivity implements CreateNdefMessageCallback, OnNdefPushCompleteCallback {

未実装のメソッドを追加

@Override
public NdefMessage createNdefMessage(NfcEvent event) {  
    ...
}
...
@Override
public void onNdefPushComplete(NfcEvent arg0) {
    ...
}

アクティビティの上部に NFC アダプターを作成します

NfcAdapter mNfcAdapter;

次に、onCreate メソッドで NFC アダプターをセットアップします。

mNfcAdapter = NfcAdapter.getDefaultAdapter(this);
if(mNfcAdapter != null) {
    // Register callback to set NDEF message
    mNfcAdapter.setNdefPushMessageCallback(this, this);

    // Register callback to listen for message-sent success
    mNfcAdapter.setOnNdefPushCompleteCallback(this, this);
} else {
    Log.i("LinkDetails", "NFC is not available on this device");
}

次に、 createNdefMessage メソッドに次を入れます。

return new NdefMessage(new NdefRecord[] {
    NdefRecord.createUri(YOUR_URL_HERE)
});

タップして離すと、残りは Android が処理します。

ガイドを提供してくれたTAPPEDの優秀な人々に感謝します。おかげで、NFC の実装が成功するまでの道のりは約 3/4 になりました。

于 2013-02-25T22:19:42.653 に答える
3

はいはい。

Web サイトの URL を含む NDEF 形式のレコードをタグに配置すれば完了です。

Android SDK にはたくさんの例があります。

于 2013-01-14T21:58:37.440 に答える
1

これらのコード、アクティブなアンドロイド NFC ビームを使用します。

そして最も重要なのは、「http://」プレフィックスです。この質問にたどり着いたユーザーのほとんどは、この .

@Override
public NdefMessage createNdefMessage(NfcEvent event) {
    NdefMessage msg = new NdefMessage(new NdefRecord[] { 
        NdefRecord.createUri("http://www.google.com")
    });
    return msg;
}
于 2014-10-07T09:44:42.603 に答える
1

コード ブロックは Android リファレンスからのものです。

これはやりたいことですが、デフォルトの Android ブラウザーのインテント フィルターを変更することはできません。

NFC タグからの NDEF データの読み取りは、検出された NFC タグを分析し、データを適切に分類し、分類されたデータに関心のあるアプリケーションを開始するタグ ディスパッチ システムで処理されます。スキャンした NFC タグを処理したいアプリケーションは、インテント フィルターを宣言し、データの処理を要求できます。

これらの機能は、ビーム機能をサポートするアプリがアクティブな場合にサポートされます。

Android Beam™ 機能を使用すると、デバイスを物理的にタップすることで、デバイスが NDEF メッセージを別のデバイスにプッシュできます。この相互作用により、Bluetooth などの他のワイヤレス テクノロジよりも簡単にデータを送信できます。NFC を使用すると、手動でデバイスを検出したり、ペアリングしたりする必要がないからです。2 台のデバイスが範囲内に入ると、接続が自動的に開始されます。Android Beam は一連の NFC API を介して利用できるため、あらゆるアプリケーションがデバイス間で情報を送信できます。たとえば、連絡先、ブラウザ、YouTube アプリケーションは Android Beam を使用して、連絡先、ウェブページ、動画を他のデバイスと共有します。

2つの違いがわかりますか?

お役に立てれば

于 2013-01-14T21:55:27.333 に答える