欢迎来到天天文库
浏览记录
ID:38811386
大小:24.74 KB
页数:5页
时间:2019-06-19
《蓝牙设备搜索安卓原理》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、蓝牙设备的连接1、获得蓝牙适配器就是这个东东:BluetoothAdapter adapter=BluetoothAdapter.getDefaultAdapter();然后判断设备是否支持蓝牙,现在的手持设备应该都支持吧,蓝牙4.0都在普及了。如果支持蓝牙,看蓝牙是否打开,没有则打开。代码如下:[java] viewplaincopy1. /** 2. * 检查设备是否支持蓝牙,若支持则打开 3. */ 4. private void ch
2、eckBluetooth() { 5. adapter = BluetoothAdapter.getDefaultAdapter(); 6. if (adapter == null) { 7. // 设备不支持蓝牙 8. Toast.makeText(this, "设备不支持蓝牙", Toast.LENGTH_SHORT).show(); 9. }else { 10. // 判断蓝牙是否打开,如果没有则打开蓝牙 11.
3、 // adapter.enable() 直接打开蓝牙,但是不会弹出提示,以下方式会提示用户是否打开 12. if (!adapter.isEnabled()) { 13. Intent intent = new Intent(); 14. //打开蓝牙设备 15. intent.setAction(BluetoothAdapter.ACTION_REQUEST_ENABLE); 16.
4、 //是设备能够被搜索 17. intent.setAction(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE); 18. // 设置蓝牙可见性,最多300秒 19. intent.putExtra(BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION, 300); 20. startActivity(intent); 21.
5、 } 22. } 23. } 2、获取本机已经配对的蓝牙设备蓝牙设备的连接关键就是这句了:Setdevices=adapter.getBondedDevices();可以放到list集合中,以便在ListView中显示。bondedDevicesList.addAll(devices);代码如下:[java] viewplaincopy1. /** 2. * 获取所有已经绑定的
6、蓝牙设备 3. */ 4. private void getBondedDevices() { 5. bondedDevicesList.clear(); 6. Set devices = adapter.getBondedDevices(); 7. bondedDevicesList.addAll(devices); 8. //为listview动态设置高度(有多少条目就显示多少条目) 9. setListVi
7、ewHeight(bondedDevicesList.size()); 10. mBondedAdapter.notifyDataSetChanged(); 11. } 3、注册用以接收到已搜索到的蓝牙设备的receiver注册receiver[java] viewplaincopy1. // 注册用以接收到已搜索到的蓝牙设备的receiver 2. IntentFilter mFilter = new IntentFi
8、lter(BluetoothDevice.ACTION_FOUND); 3. mFilter.addAction(BluetoothD
此文档下载收益归作者所有