android 蓝牙连接ble设备

    前段时间公司让帮忙做一个控制蓝牙设备的Android程序,主要就是给设备发一些命令。以前没接触过蓝牙相关的开发,所以查阅了大量的资料,最终鼓捣出来了,在此记录下

    在这里蓝牙设备是服务端,因此程序只需要实现客户端连接蓝牙设备就行了

    1.首先申请相关权限

    前面两个是蓝牙相关的权限,后面两个是定位相关的权限,定位权限必须要给,否则会扫描不到蓝牙设备

    <uses-permission android:name="android.permission.BLUETOOTH" />
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-feature android:name="android.hardware.location.gps" />

2 检测蓝牙是否开启,若未开启则去开启

BluetoothManager bluetoothManager =
                (BluetoothManager) getSystemService(Context.BLUETOOTH_SERVICE);
        mBluetoothAdapter = bluetoothManager.getAdapter();
if (!mBluetoothAdapter.isEnabled()) {
//去开启蓝牙
            Intent enabler = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
            startActivityForResult(enabler, 205);
           } else {
  
//开始扫描蓝牙设备    
}

3 开始扫描设备

 mLeScanCallback = new BluetoothAdapter.LeScanCallback() {
                @Override
                public void onLeScan(BluetoothDevice bluetoothDevice, int i, byte[] bytes) {//bluetoothDevice 就是扫描到的蓝牙设备,这里将扫描到的设备实时展示出来
                    if (bluetoothDevices==null){
                            bluetoothDevices=new ArrayList<>();
                        }
                    if (bluetoothDevice != null) {
                        boolean isSame=false;
                        for (BluetoothDevice device : bluetoothDevices) {
                            if (bluetoothDevice.getAddress().equals(device.getAddress())){
                                isSame=true;
                            }
                        }
                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值