android蓝牙基本操作(个人笔记)

本文详细介绍Android蓝牙开发的基本操作,包括蓝牙开关控制、扫描已配对和可见设备等,并提供了具体的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

android的蓝牙操作无非就几种:打开蓝牙、关闭蓝牙、提示用户打开关闭蓝牙、扫描已配对过的蓝牙设备、扫描周围可见的蓝牙设备、设置蓝牙的可见性。

主要的类:BluetoothAdapter(代表本地蓝牙设备)、BluetoothDevice(代表远程蓝牙设备)

使用蓝牙需要的权限:

<!-- 必须 -->
<uses-permission 
        android:name="android.permission.BLUETOOTH"/>
<!-- 设置可见性必须 -->
    <uses-permission 
        android:name="android.permission.BLUETOOTH_ADMIN"/>


1、打开蓝牙:

BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();
adapter.enable();


2、关闭蓝牙:

BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();
adapter.disable();

3、提示用户打开关闭蓝牙:

BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();
//如果Intent传参为BluetoothAdapter.ACTION_REQUEST_DISABLE,则提示关闭
Intent intent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
startActivity(intent);

4、扫描已配对过的蓝牙设备:

BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();
//要扫描已配对的设备,必须先打开蓝牙
if(!adapter.isEnabled()) adapter.enable();
Set<BluetoothDevice> set = adapter.getBondedDevices();

//可通过配对过的蓝牙设备对象,进行一些操作,如果获得他们的max地址
Iterator<BluetoothDevice> it = set.iterator();
					String addresses = "";
					while(it.hasNext()) {
						BluetoothDevice device = (BluetoothDevice)it.next();
						addresses += device.getAddress() + "\n";
					}


5、扫描周围可见的蓝牙设备:

BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();
adapter.startDiscovery ();
实际上,每次扫描时系统都会发出广播,有三种,分别表示开始扫描、扫描到可见设备、结束扫描。Action为有BluetoothDevice.ACTION_FOUND表示扫描到可见设备

这里,我写一个广播接收器去接收该广播,并打印出扫描到的可见的蓝牙设备信息(以下是onReceive方法里的代码块):

BluetoothDevice device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
System.out.println(device.getAddress());




6、设置蓝牙可见性时长:

Intent i = new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE);
					i.putExtra(BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION, 400);
					startActivity(i);



以下是判断蓝牙是否打开(经常会用到):

BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();
adapter.isEnabled()


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值