Если Android-приложение хочет получить доступ к bluetooth, ему нужно явно попросить пользователя включить Bluetooth? Может ли пользователь разрешить приложение включать его (и выключать), когда захочет?
Документация для Bluetooth для Bluetooth говорит, что вы можете включать/отключать Bluetooth без каких-либо запросов для пользователя. Все, что вам нужно, это добавить android.permission.BLUETOOTH
в манифест. Но было бы неплохо спросить пользователя, прежде чем переключать bluetooth на использование батареи.
Вы должны явно попросить пользователя включить Bluetooth с помощью следующего Intent
:
if (!mBluetoothAdapter.isEnabled()) {
Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT);
}
Затем появится предупреждение, позволяющее пользователю ответить на запрос. Существует функция BluetoothAdapter
enable()
, но в документации явно запрещается ее использование, за исключением особых обстоятельств.
Я не поддерживал API-интерфейсы bluetooth, но в последнее время я знал, что включение Bluetooth требует явных действий от пользователя при нормальных обстоятельствах. Конечно, в вашей собственной копии андроида возможно, что разрешения будут работать таким образом. Могут также быть способы сделать это, если устройство укоренено, но я не знаю.