Как открыть программный интерфейс Bluetooth?
Я хочу открыть настройки bluetooth при нажатии кнопки
как показано на рисунке ![bluetooth image]()
HomeActivity.java
button.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
final Intent intent = new Intent(Intent.ACTION_MAIN, null);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
final ComponentName cn = new ComponentName("com.android.settings", "com.android.settings.bluetoothSettings");
intent.setComponent(cn);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity( intent);
}
});
Ответы
Ответ 1
использование
ComponentName cn = new ComponentName("com.android.settings",
"com.android.settings.bluetooth.BluetoothSettings");
вместо
final ComponentName cn = new ComponentName("com.android.settings",
"com.android.settings.bluetoothSettings");
для запуска настроек BluetoothSettings
Ответ 2
Возможно, я что-то пропустил, но разве это не простое решение для будущего решения?
Intent intentOpenBluetoothSettings = new Intent();
intentOpenBluetoothSettings.setAction(android.provider.Settings.ACTION_BLUETOOTH_SETTINGS);
startActivity(intentOpenBluetoothSettings);
Невозможно "удалить" другие настройки. На телефонах показана только одна категория настроек. На планшетах из-за некоторого дополнительного места настройки отображаются в макете "Мастер-макет", поэтому на половине экрана планшета нет свободного места. Именно так разработан Android и просто написав одно приложение, которое нельзя изменить.
Как было предложено @zelanix, требуется разрешение BLUETOOTH_ADMIN
в манифесте.
Ответ 3
Я думаю, вы должны попробовать это проще:
startActivity (новый Intent (android.provider.Settings.ACTION_BLUETOOTH_SETTINGS));
Ответ 4
adb shell am start -a android.settings.BLUETOOTH_SETTINGS