J'ai rencontré ce problème sur un Nexus 4 et un Nexus 5. Le Bluetooth s'active de manière inattendue. On peut le désactiver, mais il revient une minute ou deux plus tard.
En cherchant sur Google, il semble que cela puisse être dû à une application qui se comporte mal, mais il ne semble pas y avoir de bonne solution pour trouver cette application.
Y a-t-il un moyen de savoir ce qui est responsable de la réactivation permanente de Bluetooth ?
Si cela peut être utile, j'ai capturé une partie de la sortie adb après avoir désactivé Bluetooth.
Lors de la désactivation :
D/BluetoothManagerService( 578): disable(): mBluetooth = android.bluetooth.IBluetooth$Stub$Proxy@42d29fa0 mBinding = false
D/BluetoothManagerService( 578): Message: 2
D/BluetoothManagerService( 578): Sending off request.
D/BluetoothAdapterState(23958): CURRENT_STATE=ON, MESSAGE = USER_TURN_OFF
D/BluetoothAdapterProperties(23958): Setting state to 13
I/BluetoothAdapterState(23958): Bluetooth adapter state changed: 12-> 13
D/BluetoothAdapterService(23958): Broadcasting updateAdapterState() to 1 receivers.
D/BluetoothAdapterProperties(23958): onBluetoothDisable()
I/BluetoothAdapterState(23958): Entering PendingCommandState State: isTurningOn()=false, isTurningOff()=true
D/BluetoothManagerService( 578): Message: 60
D/BluetoothManagerService( 578): MESSAGE_BLUETOOTH_STATE_CHANGE: prevState = 12, newState=13
D/BluetoothManagerService( 578): Bluetooth State Change Intent: 12 -> 13
D/BluetoothMapService(23958): onReceive
D/BluetoothMapService(23958): STATE_TURNING_OFF
D/BluetoothMapService(23958): MAP Service closeService in
I/BtOppRfcommListener(23958): stopping Accept Thread
I/CompanionService(13584): bluetoothStateChangeReceiver action = android.bluetooth.adapter.action.STATE_CHANGED
D/CachedBluetoothDevice(14368): Clearing all connection state for dev:Bose SoundLink Wireless Mobile speaker
D/CachedBluetoothDevice(14368): Clearing all connection state for dev:ANDY
D/CachedBluetoothDevice(14368): Clearing all connection state for dev:obd2ecu
D/CachedBluetoothDevice(14368): Clearing all connection state for dev:Glass 6014
D/CachedBluetoothDevice(14368): Clearing all connection state for dev:P311
D/CachedBluetoothDevice(14368): Clearing all connection state for dev:Logitech MX5000 Keyboard
W/ContextImpl(14368): Calling a method in the system process without a qualified user: android.app.ContextImpl.startService:1487 android.content.ContextWrapper.startService:494 android.content.ContextWrapper.startService:494 com.android.set
tings.bluetooth.DockEventReceiver.beginStartingService:134 com.android.settings.bluetooth.DockEventReceiver.onReceive:115
D/DockEventReceiver(14368): finishStartingService: stopping service
D/BluetoothPbap(14368): Proxy object disconnected
D/PbapServerProfile(14368): Bluetooth service disconnected
W/BluetoothAdapterState(23958): Timeout will setting scan mode..Continuing with disable...
D/BluetoothAdapterState(23958): CURRENT_STATE=PENDING, MESSAGE = BEGIN_DISABLE, isTurningOn=false, isTurningOff=true
E/bt-btif (23958): btif_disable_bluetooth : not yet enabled
Puis, quelques instants plus tard :
D/BluetoothAdapterState(23958): CURRENT_STATE=PENDING, MESSAGE = DISABLE_TIMEOUT, isTurningOn=false, isTurningOff=true
E/BluetoothAdapterState(23958): Error disabling Bluetooth
D/BluetoothAdapterProperties(23958): Setting state to 12
I/BluetoothAdapterState(23958): Bluetooth adapter state changed: 13-> 12
D/BluetoothAdapterService(23958): Broadcasting updateAdapterState() to 1 receivers.
D/BluetoothManagerService( 578): Message: 60
D/BluetoothManagerService( 578): MESSAGE_BLUETOOTH_STATE_CHANGE: prevState = 13, newState=12
D/BluetoothManagerService( 578): Broadcasting onBluetoothStateChange(true) to 13 receivers.
D/BluetoothPan( 578): onBluetoothStateChange(on) call bindService
I/BluetoothAdapterState(23958): Entering On State
0 votes
Question rapide, je suppose que c'est pour "Stock Rom" pour les deux appareils Nexus ? Si oui, pouvez-vous lancer
adb shell dumpsys meminfo
.. Il peut tout aussi bien s'agir d'un paquet que vous avez installé sur vos téléphones qui pourrait être le coupable. Pour info - J'ai effectué les mêmes tests sur mon Nexus 5 - téléphone enraciné avec ROM stock. et tout fonctionne pour moi... cependant je trouve cette ligne de log intéressante où l'état change de 13 -> 10 quand j'ai arrêté le service Bluetooth...D/BluetoothManagerService( 1683): Bluetooth State Change Intent: 13 -> 10
0 votes
@Rushnosh, oui c'est le stock Google Android sur les deux appareils. Je ferai le vidage de la mémoire plus tard et j'ajouterai ce que je trouve à la question.
0 votes
Ok, aussi la version Andriod si possible ?
0 votes
J'ai aussi les cartes de changement d'État : 12 = STATE_ON - Le dispositif BT est allumé 10 = STATE_OFF - Le dispositif BT est éteint 13 = STATE_TURNING_OFF - Le dispositif BT est éteint 11 = STATE_TURNING_ON - Le dispositif BT est allumé Plus d'informations ici : developer.Android.com/reference/Android/bluetooth/
0 votes
En comparant vos journaux aux miens, j'ai remarqué qu'il y a un avertissement lorsque vous essayez d'effacer vos périphériques Blue Tooth sous le message du clavier Logitec :
D/CachedBluetoothDevice(14368): Clearing all connection state for dev:Logitech MX5000 Keyboard W/ContextImpl(14368): Calling a method in the system process without a qualified user:
Je ne sais pas si c'est lié mais redémarrez votre téléphone, effectuez le test BT on/off pour voir si le téléphone fonctionne normalement, puis connectez votre clavier pour voir si c'est votre logitec qui ne gère pas la déconnexion.1 votes
Pour répondre à quelques questions, j'ai Android 4.4.4, build KTU84P. Le clavier Logitech se trouve actuellement à plusieurs kilomètres, donc à moins que j'aie vraiment sous-estimé les capacités de Bluetooth, cela ne devrait pas poser de problème. (Le Nexus 5 n'a jamais vu le Logitech non plus). Par ailleurs, merci pour le temps que vous avez consacré à cette question jusqu'à présent... c'est vraiment apprécié !
0 votes
Avez-vous au moins essayé de redémarrer votre téléphone et d'effectuer le test que j'ai demandé mais ?
1 votes
Désolé, j'ai manqué de temps hier soir. J'ai redémarré et maintenant le problème a disparu ! Ce qui signifie que nous n'avons pas de réponse quant à la cause du problème. Si / quand le problème reviendra, j'effectuerai votre test sur le téléphone. Merci pour les conseils !
0 votes
C'est le processus d'élimination mon ami :) ... au moins le problème ne persiste pas lorsque vous redémarrez votre téléphone, donc maintenant nous avons une base de travail. Maintenant, essayez un certain nombre de choses comme... reconnecter votre clavier et faire quelques tests... si tout fonctionne bien, essayez autre chose... en examinant vos journaux, vous aviez un certain nombre de périphériques BT différents à choisir. Si le problème persiste, indiquez les étapes que vous avez suivies pour reproduire le problème, et vous pourrez ainsi transmettre vos résultats au groupe de développeurs concerné.)
0 votes
Et videz aussi vos journaux de logcat ^_^