android 蓝牙的基本操作
一,获得BluetoothAdapter对象
BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();
二,判断当前设备中是否有蓝牙设备
if(adapter!=null){
//有蓝牙设备
}else{
//没有蓝牙设备
}
三,判断蓝牙是否打开和打开蓝牙
Set<BluetoothDevice> devices = adapter.getBondedDevices(); if(devices.size()>0){ for(Iterator iterator = devices.iterator();iterator.hasNext();){ BluetoothDevice device = (BluetoothDevice) iterator.next(); System.out.println("已配对的设备:"+device.getAddress()); } }
五,设置蓝牙的可见性
//启动修改蓝牙可见性的Intent Intent intent = new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE); //设置蓝牙可见性的时间,方法本身规定最多可见300秒 intent.putExtra(BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION, 300); startActivity(intent);
六,扫描周围的蓝牙设备
adapter.startDiscovery();
android把扫描到的蓝牙设备通过广播的形式发出去,所以想接收扫描结果就必须写个广播接收器类。
class BlutetoothReceiver extends BroadcastReceiver{ @Override public void onReceive(Context context, Intent intent) { //从收到的intent对象中将代表远程蓝牙设配器的对象取出 BluetoothDevice devices = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE); System.out.println(devices.getAddress()); } }
七,注意事项:权限
注意:模拟器上不能模拟蓝牙设备,只能在真机上才能看到结果。
- <!-- 使用蓝牙设备的权限 -->
- <uses-permission android:name="android.permission.BLURTOOTH"/>
- <!-- 管理蓝牙设备的权限 -->
- <uses-permission android:name="android.permission.BLURTOOTH_ADMIN"/>
相关推荐
80296330 2020-09-15
SeetyST 2020-08-13
张俊杰 2020-08-02
浅梦墨汐 2020-07-28
北落不吉 2020-06-27
棋牌游戏开发 2020-06-11
greenpepper 2020-06-11
greenpepper 2020-06-13
seek 2020-06-10
dotstar 2020-06-02
hushijiao 2020-05-17
浅梦墨汐 2020-05-12
chinaycheng 2020-05-06
sixforone 2020-05-06
海豚的成长日记 2020-05-04
greenpepper 2020-04-29
greenpepper 2020-04-22
海豚的成长日记 2020-01-12