判断当前手机蓝牙是否开启
2017-08-08 21:11
218 查看
众所周知蓝牙是我们手机都有的一个功能
可以利用代码来实现管理蓝牙的状态
可以利用代码来实现管理蓝牙的状态
private BluetoothAdapter adapter; private BroadcastReceiver receiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { //接收蓝牙状态变化的广播 String action = intent.getAction(); //发现蓝牙设备 BluetoothDevice device=intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE); if (action.equals(BluetoothDevice.ACTION_FOUND)) { String name= device.getName(); } else if (action.equals(BluetoothDevice.ACTION_BOND_STATE_CHANGED)) { //可以在监听到蓝牙状态是进行操作 switch (device.getBondState()){ case BluetoothDevice.BOND_BONDED: //已经配对成功 break; case BluetoothDevice.BOND_BONDING: //正在连接 break; case BluetoothDevice.BOND_NONE: //取消连接 break; default: break; } } } }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //蓝牙连接设备增加 IntentFilter filter = new IntentFilter(BluetoothDevice.ACTION_FOUND); //蓝牙连接状态发生改变 filter.addAction(BluetoothDevice.ACTION_BOND_STATE_CHANGED); //注册 registerReceiver(receiver, filter); //获取蓝牙适配器 adapter = BluetoothAdapter.getDefaultAdapter(); boolean isenable = adapter.isEnabled(); System.out.println(isenable + "<-=-=-=-isenable"); //获取蓝牙是否可用 Toast.makeText(MainActivity.this, isenable + "<-=-=-=-isenable", Toast.LENGTH_SHORT).show(); if (!adapter.isEnabled()) { //开启蓝牙 adapter.enable(); } else { Intent intent = new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE); //设置你自己的设备可以被其他设备搜索的时间;最大3600 intent.putExtra(BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION, 300); startActivity(intent); } //蓝牙设备的地址 String address = adapter.getAddress(); String name = adapter.getName(); Log.d("蓝牙", "name=" + name + " address=" + address); //获取通过蓝牙已经连接的设备 Set<BluetoothDevice> list = adapter.getBondedDevices(); if (list != null) { for (BluetoothDevice device : list) { //设备名称 String dname = device.getName(); } } //搜索其他设备 new Thread() { @Override public void run() { super.run(); //正在搜索状态 if (adapter.isDiscovering()) { adapter.cancelDiscovery(); } //开始搜索其他设备; adapter.startDiscovery(); } }.start(); } @Override protected void onDestroy() { super.onDestroy(); unregisterReceiver(receiver); }
相关文章推荐
- 判断APP用户手机是否开启了定位服务
- ios判断蓝牙是否开启
- 小米手机与魅族手机判断悬浮框是否开启
- 如何判断Android手机当前是否联网?
- Android(判断wifi是否开启,手机屏幕状态,sdcard是否被拔出,设置全屏)
- 判断android手机当前是否接入网络
- Android如何判断当前手机是否正在播放音乐,并获取到正在播放的音乐的信息
- 在Linux下判断系统当前是否开启了超线程
- Android如何判断当前手机是否正在播放音乐,并获取到正在播放的音乐的信息
- 如何判断Android手机当前是否联网
- Android(判断wifi是否开启,手机屏幕状态,sdcard是否被拔出,设置全屏)
- app判断当前网络是否可用并开启wifi和开启GPRS
- Android如何判断当前手机是否正在播放音乐,并获取到正在播放的音乐的信息
- 获取当前手机App版本以及AppStore中的最新版本,判断是否需要更新
- 如何判断Android手机当前是否联网
- 如何判断Android手机当前是否联网?
- 判断蓝牙和Wifi是否开启
- 判断手机GPS是否开启
- 判断蓝牙WiFi是否开启 网上的
- android中如何判断Android手机当前是否联网?