如何在Xamarin.Android中使用NFC发送消息?

海蒂

我正在开发和应用程序来演示NFC的工作原理。我的目标是制作与Android Beam非常相似的应用程序。我正在使用Xamarin.Android。目的是将消息键入一台设备,按按钮,然后应将消息发送到具有相同应用程序的另一台设备上。我已经尝试了几乎所有内容,甚至是文档,但似乎不起作用。有人对此技术有经验吗?这项技术现在是否可用?

我有一些代码可以让您了解我要做什么:

    protected override void OnCreate(Bundle savedInstanceState)
    {
        base.OnCreate(savedInstanceState);
        Xamarin.Essentials.Platform.Init(this, savedInstanceState);
        SetContentView(Resource.Layout.activity_main);

        mNfcAdapter = NfcAdapter.GetDefaultAdapter(this);


        myButton.Click += (e, o) => { 
            mNfcAdapter.SetNdefPushMessageCallback(this, this);
            mNfcAdapter.SetOnNdefPushCompleteCallback(this, this);
            };
    }

   public NdefMessage CreateNdefMessage(NfcEvent e)
    {
        DateTime time = DateTime.Now;
        var text = (time.ToString("HH:mm:ss") + message2);
        NdefMessage msg = new NdefMessage(
        new NdefRecord[] { CreateMimeRecord (
            text, Encoding.UTF8.GetBytes (text))});
        return msg;
    }

    private NdefRecord CreateMimeRecord(string mimeType, byte[] payload)
    {
        byte[] mimeBytes = Encoding.UTF8.GetBytes(mimeType);
        NdefRecord mimeRecord = new NdefRecord(
            NdefRecord.TnfMimeMedia, mimeBytes, new byte[0], payload);
        return mimeRecord;
    }

    public void OnNdefPushComplete(NfcEvent e)
    {
        Toast.MakeText(this.ApplicationContext, "Message sent", ToastLength.Long).Show();
    }

    protected override void OnResume()
    {
        base.OnResume();
        if (NfcAdapter.ActionNdefDiscovered == Intent.Action)
        {
            ProcessIntent(Intent);
        }
    }

    protected override void OnNewIntent(Intent intent)
    {
        Intent = intent;
    }

    void ProcessIntent(Intent intent)
    {
        IParcelable[] rawMsgs = intent.GetParcelableArrayExtra(
            NfcAdapter.ExtraNdefMessages);
        NdefMessage msg = (NdefMessage)rawMsgs[0];
        var textViewMsg = FindViewById<TextView>(Resource.Id.textViewMsg);
        textViewMsg.Text = Encoding.UTF8.GetString(msg.GetRecords()[0].GetPayload());
    }

谢谢你们 :)

安德鲁

OnNdefPushComplete 并且不推荐使用整个Android Beam,并将其从Android 10中删除

https://developer.android.com/reference/android/nfc/NfcAdapter.OnNdefPushCompleteCallback

如果要继续进行“设备到设备” NFC,则一部手机可以进行主机卡仿真(HCE),而另一部手机可以使用 enableReaderMode

但是Google建议使用Bluetooth或Wifi Direct作为Android Beam的更可靠替代。Google提供的一种替代方法是Android附近的https://developers.google.com/nearby

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Xamarin Android中使用RunOnUIThread()

来自分类Dev

如何在Xamarin Android中使用RunOnUIThread()

来自分类Dev

如何在Xamarin Android中使用NLog

来自分类Dev

如何在Android中使用Twitter发送图像作为直接消息?

来自分类Dev

如何在Xamarin iOS中使用applicationDidBecomeActive?

来自分类Dev

如何在Xamarin中使用SignalR

来自分类Dev

如何在xamarin中使用OnPageScrollStateChanged

来自分类Dev

如何在Xamarin中使用Hash SHA

来自分类Dev

如何在Xamarin.Android中使用SharedPreferences?

来自分类Dev

如何在Xamarin Forms PCL中使用本机Android ImageView?

来自分类Dev

如何在Android上的Xamarin中使用Spatialite

来自分类Dev

如何在Xamarin Android应用程序中使用动画?

来自分类Dev

如何在Xamarin中使用Android的内部存储?

来自分类Dev

如何在Xamarin.Forms中使用Android控件

来自分类Dev

如何在Xamarin.Android中使用Value Animator?

来自分类Dev

如何在Xamarin.Android中使用MPAndroidChart的ValueFormatter

来自分类Dev

如何在 xamarin Android 中使用 netstandard 2.1?

来自分类Dev

如何在Android的Thread中使用Toast消息

来自分类Dev

如何在Android的Thread中使用Toast消息

来自分类Dev

如何在Android中使用Volley发送(POST)xml文件

来自分类Dev

如何在Android中使用Volley发送参数数组

来自分类Dev

如何在Android中使用Pushwoosh发送自动推送通知

来自分类Dev

如何在Android中使用定时发送短信

来自分类Dev

如何在Android中使用HttpPost发送多个Json数据

来自分类Dev

如何在Android中使用Java发送数据报包

来自分类Dev

如何在android中使用url发送参数并获得响应

来自分类Dev

如何在Akka中使用元组发送消息?使用F#进行远程处理?

来自分类Dev

如何在android studio中使用NFC实现谷歌即时应用程序

来自分类Dev

如何在android中更改发送消息?

Related 相关文章

  1. 1

    如何在Xamarin Android中使用RunOnUIThread()

  2. 2

    如何在Xamarin Android中使用RunOnUIThread()

  3. 3

    如何在Xamarin Android中使用NLog

  4. 4

    如何在Android中使用Twitter发送图像作为直接消息?

  5. 5

    如何在Xamarin iOS中使用applicationDidBecomeActive?

  6. 6

    如何在Xamarin中使用SignalR

  7. 7

    如何在xamarin中使用OnPageScrollStateChanged

  8. 8

    如何在Xamarin中使用Hash SHA

  9. 9

    如何在Xamarin.Android中使用SharedPreferences?

  10. 10

    如何在Xamarin Forms PCL中使用本机Android ImageView?

  11. 11

    如何在Android上的Xamarin中使用Spatialite

  12. 12

    如何在Xamarin Android应用程序中使用动画?

  13. 13

    如何在Xamarin中使用Android的内部存储?

  14. 14

    如何在Xamarin.Forms中使用Android控件

  15. 15

    如何在Xamarin.Android中使用Value Animator?

  16. 16

    如何在Xamarin.Android中使用MPAndroidChart的ValueFormatter

  17. 17

    如何在 xamarin Android 中使用 netstandard 2.1?

  18. 18

    如何在Android的Thread中使用Toast消息

  19. 19

    如何在Android的Thread中使用Toast消息

  20. 20

    如何在Android中使用Volley发送(POST)xml文件

  21. 21

    如何在Android中使用Volley发送参数数组

  22. 22

    如何在Android中使用Pushwoosh发送自动推送通知

  23. 23

    如何在Android中使用定时发送短信

  24. 24

    如何在Android中使用HttpPost发送多个Json数据

  25. 25

    如何在Android中使用Java发送数据报包

  26. 26

    如何在android中使用url发送参数并获得响应

  27. 27

    如何在Akka中使用元组发送消息?使用F#进行远程处理?

  28. 28

    如何在android studio中使用NFC实现谷歌即时应用程序

  29. 29

    如何在android中更改发送消息?

热门标签

归档