Android蓝牙适配器扫描模式

时间:2016-05-21 20:40:12

标签: android bluetooth bluetooth-lowenergy android-bluetooth

我想了解是什么原因导致Android BluetoothAdapter在没有任何用户干预的情况下自动更改其扫描模式?我注册了BroadcastReceiver来收听扫描模式的变化。最初它在SCAN_MODE_CONNECTABLE_DISCOVERABLE,然后一段时间(一分钟左右)后变为SCAN_MODE_CONNECTABLE

是否有任何导致此类更改的系统事件?

1 个答案:

答案 0 :(得分:0)

Android系统会在系统活动中显示的超时后自动将蓝牙更改回不可发现状态,该系统活动请求允许设备被发现的权限。

默认超时为120秒。如果需要,您的应用可以使用BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION请求更长的超时。此超时最长可达3600秒。以下是Bluetooth documentation请求5分钟超时的示例:

Intent discoverableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE);
discoverableIntent.putExtra(BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION, 300);
startActivity(discoverableIntent);