Wie überprüfe ich, ob Bluetooth programmgesteuert aktiviert ist?
73
Ich möchte regelmäßig überprüfen, ob Bluetooth auf einem Android-Gerät aktiviert ist. Gibt es irgendwelche Absichten, die ich mit BroadcastReceiver erfassen könnte, oder gibt es andere Möglichkeiten, dies zu tun?
Schauen Sie sich einfach diesen Link für Bluetooth an und befolgen Sie alle Schritte. Ich hoffe diese Hilfe.
Uttam
Antworten:
178
Los geht's:
BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
if (mBluetoothAdapter == null) {
// Device does not support Bluetooth
} elseif (!mBluetoothAdapter.isEnabled()) {
// Bluetooth is not enabled :)
} else {
// Bluetooth is enabled
}
Wenn für diese Erkennung nur eine Bluetooth-Berechtigung erforderlich ist, vergessen Sie nicht, diese NICHT erforderlich festzulegen: <Verwendungsfunktion android: name = "android.hardware.bluetooth" android: required = "false" />
Murphy
Ist Internet erforderlich, um Bluetooth zu überprüfen?
Portfoliobuilder
5
Nein, Sie brauchen kein Internet, um den Bluetooth-Status zu überprüfen.
Antworten:
Los geht's:
BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); if (mBluetoothAdapter == null) { // Device does not support Bluetooth } else if (!mBluetoothAdapter.isEnabled()) { // Bluetooth is not enabled :) } else { // Bluetooth is enabled }
Mit
uses-permission
<uses-permission android:name="android.permission.BLUETOOTH" android:required="false" />
quelle
public boolean isBluetoothEnabled() { BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); return mBluetoothAdapter.isEnabled(); }
mit der Erlaubnis in der Manifestdatei:
<uses-permission android:name="android.permission.BLUETOOTH" />
quelle
Hier habe ich eine andere Alternative als Antwort auf diese Frage.
Fügen Sie zuerst die folgenden Zeilen in Ihre Manifest-Datei ein.
<uses-feature android:name="android.hardware.BLUETOOTH" android:required="false"/>
Wenn Sie nun die Bluetooth-Unterstützung überprüfen möchten, verwenden Sie den folgenden Code.
boolean isBluetoothSupported = getPackageManager().hasSystemFeature(PackageManager.FEATURE_BLUETOOTH);
quelle
So überprüfen Sie den Bluetooth-Status programmgesteuert: EIN oder AUS:
BluetoothAdapter btAdapter = ((Build.VERSION.SDK_INT > Build.VERSION_CODES.JELLY_BEAN_MR1) ?((BluetoothManager)mContext.getSystemService(Context.BLUETOOTH_SERVICE)).getAdapter() :(BluetoothAdapter.getDefaultAdapter())); if(btAdapter==null){ return; } if(btAdapter.getState()==BluetoothAdapter.STATE_ON){ //Bluetooth is ON }
Sie können auch die Absichtsaktion anhören:
quelle
Verwendung kann verwenden
zur Überprüfung bt verbunden
zur Überprüfung bt getrennt
quelle
So habe ich es mit Hilfe von @ xjaphx 'Antwort gemacht, leicht vereinfachte Version:
private boolean getBlueToothOn(){ BluetoothAdapter btAdapter = BluetoothAdapter.getDefaultAdapter(); return btAdapter != null && btAdapter.isEnabled(); } <uses-permission android:name="android.permission.BLUETOOTH" />
quelle