xamarin.android蓝牙,xamarin.forms

形式

创建一个界面

public interface IBLEPrint

{

void BlePrint();

}

在Android项目中

实施接口

using xxx.Droid;

using xxx

using Xamarin.Forms;

using Xamarin.Forms.PlatformConfiguration.AndroidSpecific;

//using ...

[assembly: Dependency(typeof(BLEPrintService))]

namespace xxx.Droid

{

public class BLEPrintService : IBLEPrint

{

public void BlePrint()

{

//...

using (BluetoothAdapter bluetoothAdapter = BluetoothAdapter.DefaultAdapter)

{

if (bluetoothAdapter == null)

{

throw new Exception("No default adapter");

}

if (!bluetoothAdapter.IsEnabled)

{

throw new Exception("Bluetooth not enabled");

//Intent enableIntent = new Intent(BluetoothAdapter.ActionRequestEnable);

//StartActivityForResult(enableIntent, REQUEST_ENABLE_BT);

// Otherwise, setup the chat session

}

BluetoothDevice device = (from bd in bluetoothAdapter.BondedDevices

where bd.Name == printerName

select bd).FirstOrDefault();

if (device == null)

throw new Exception(printerName + " device not found.");

using (BluetoothSocket _socket = device.CreateRfcommSocketToServiceRecord(UUID.FromString("00001101***")))

{

await _socket.ConnectAsync();

byte[] buffer = System.Text.Encoding.UTF8.GetBytes(input);

await Task.Delay(3000);

// Write data to the device

await _socket.OutputStream.WriteAsync(buffer, 0, buffer.Length);

_socket.Close();

}

}

}

}

}

}

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
©️2021 CSDN 皮肤主题: 深蓝海洋 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值