studio puedo opciones modo habilitar fisicos deshabilitar desarrollador desactivar botones activar android bluetooth

puedo - opciones de desarrollador android 7



Cómo habilitar/deshabilitar bluetooth programáticamente en Android (8)

Agregue los siguientes permisos en su archivo de manifiesto:

<uses-permission android:name="android.permission.BLUETOOTH"/> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>

Habilita bluetooth usa esto

BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); if (!mBluetoothAdapter.isEnabled()) { mBluetoothAdapter.enable(); }else{Toast.makeText(getApplicationContext(), "Bluetooth Al-Ready Enable", Toast.LENGTH_LONG).show();}

Deshabilita bluetooth usa esto

BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); if (mBluetoothAdapter.isEnabled()) { mBluetoothAdapter.disable(); }

Hola a todos,

Quiero habilitar / deshabilitar Bluetooth a través del programa ... Tengo el siguiente código.

BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); if (!mBluetoothAdapter.isEnabled()) { Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT);

Pero este tipo de código no funciona en SDK 1.5 ... ¿Cómo puedo hacer lo mismo en SDK 1.5?



Aquí hay una forma un poco más robusta de hacerlo, también manejando los valores de retorno de enable()/disable() métodos enable()/disable() :

public static boolean setBluetooth(boolean enable) { BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); boolean isEnabled = bluetoothAdapter.isEnabled(); if (enable && !isEnabled) { return bluetoothAdapter.enable(); } else if(!enable && isEnabled) { return bluetoothAdapter.disable(); } // No need to change bluetooth state return true; }

Y agrega los siguientes permisos en tu archivo de manifiesto:

<uses-permission android:name="android.permission.BLUETOOTH"/> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>

Pero recuerda estos puntos importantes:

Esta es una llamada asíncrona: se devolverá de inmediato, y los clientes deberán escuchar ACTION_STATE_CHANGED para recibir notificaciones de los cambios de estado del adaptador posteriores. Si esta llamada devuelve verdadero, el estado del adaptador pasará inmediatamente de STATE_OFF a STATE_TURNING_ON, y algún tiempo después pasará a STATE_OFF o STATE_ON. Si esta llamada devuelve falso, hubo un problema inmediato que impedirá que se encienda el adaptador, como el modo avión, o el adaptador ya está encendido.

ACTUALIZAR:

Ok, entonces, ¿cómo implementar bluetooth listener ?:

private final BroadcastReceiver mReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { final String action = intent.getAction(); if (action.equals(BluetoothAdapter.ACTION_STATE_CHANGED)) { final int state = intent.getIntExtra(BluetoothAdapter.EXTRA_STATE, BluetoothAdapter.ERROR); switch (state) { case BluetoothAdapter.STATE_OFF: // Bluetooth has been turned off; break; case BluetoothAdapter.STATE_TURNING_OFF: // Bluetooth is turning off; break; case BluetoothAdapter.STATE_ON: // Bluetooth has been on break; case BluetoothAdapter.STATE_TURNING_ON: // Bluetooth is turning on break; } } } };

¿Y cómo registrar / anular el registro del receptor? (En tu clase de Activity )

@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // ... // Register for broadcasts on BluetoothAdapter state change IntentFilter filter = new IntentFilter(BluetoothAdapter.ACTION_STATE_CHANGED); registerReceiver(mReceiver, filter); } @Override public void onStop() { super.onStop(); // ... // Unregister broadcast listeners unregisterReceiver(mReceiver); }


La solución de prijin funcionó perfectamente para mí. Es justo mencionar que se necesitan dos permisos adicionales:

<uses-permission android:name="android.permission.BLUETOOTH"/> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>

Cuando se agregan, habilitar y deshabilitar funciona sin problemas con el adaptador bluetooth predeterminado.


Para habilitar Bluetooth, puede usar cualquiera de las siguientes funciones:

public void enableBT(View view){ BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); if (!mBluetoothAdapter.isEnabled()){ Intent intentBtEnabled = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); // The REQUEST_ENABLE_BT constant passed to startActivityForResult() is a locally defined integer (which must be greater than 0), that the system passes back to you in your onActivityResult() // implementation as the requestCode parameter. int REQUEST_ENABLE_BT = 1; startActivityForResult(intentBtEnabled, REQUEST_ENABLE_BT); } }

La segunda función es:

public void enableBT(View view){ BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); if (!mBluetoothAdapter.isEnabled()){ mBluetoothAdapter.enable(); } }

La diferencia es que la primera función hace que la aplicación solicite permiso al usuario para encender el Bluetooth o denegar. La segunda función hace que la aplicación encienda el Bluetooth directamente.

Para desactivar Bluetooth, use la siguiente función:

public void disableBT(View view){ BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); if (mBluetoothAdapter.isEnabled()){ mBluetoothAdapter.disable(); } }

NOTA / La primera función solo necesita el siguiente permiso para definirse en el archivo AndroidManifest.xml:

<uses-permission android:name="android.permission.BLUETOOTH"/>

Mientras que, la segunda y tercera funciones necesitan los siguientes permisos:

<uses-permission android:name="android.permission.BLUETOOTH"/> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>


Utilicé el siguiente código para desactivar BT cuando mi aplicación se inicia y funciona bien. No estoy seguro de si esta es la forma correcta de implementar esto, ya que google recomienda no usar "bluetooth.disable ();" sin acción explícita del usuario para desactivar Bluetooth.

BluetoothAdapter bluetooth = BluetoothAdapter.getDefaultAdapter(); bluetooth.disable();

Solo utilicé el permiso a continuación.

<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>


este código funcionó para mí ...

//Disable bluetooth BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); if (mBluetoothAdapter.isEnabled()) { mBluetoothAdapter.disable(); }

Para que esto funcione, debe tener los siguientes permisos:

<uses-permission android:name="android.permission.BLUETOOTH"/> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>


prueba esto:

//this method to check bluetooth is enable or not: true if enable, false is not enable public static boolean isBluetoothEnabled() { BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); if (!mBluetoothAdapter.isEnabled()) { // Bluetooth is not enable :) return false; } else{ return true; } } //method to enable bluetooth public static void enableBluetooth(){ BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); if (!mBluetoothAdapter.isEnabled()) { mBluetoothAdapter.enable(); } } //method to disable bluetooth public static void disableBluetooth(){ BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); if (mBluetoothAdapter.isEnabled()) { mBluetoothAdapter.disable(); } }

Agregue estos permisos en manifiesto

<uses-permission android:name="android.permission.BLUETOOTH"/> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>