@@ -3490,12 +3490,15 @@ private void onSetWiredDeviceConnectionState(int device, int state, String name)
34903490 (device == AudioSystem .DEVICE_OUT_WIRED_HEADPHONE ))) {
34913491 setBluetoothA2dpOnInt (true );
34923492 }
3493- handleDeviceConnection ((state == 1 ), device , "" );
3493+ boolean isUsb = ((device & AudioSystem .DEVICE_OUT_ALL_USB ) != 0 );
3494+ handleDeviceConnection ((state == 1 ), device , (isUsb ? name : "" ));
34943495 if ((state != 0 ) && ((device == AudioSystem .DEVICE_OUT_WIRED_HEADSET ) ||
34953496 (device == AudioSystem .DEVICE_OUT_WIRED_HEADPHONE ))) {
34963497 setBluetoothA2dpOnInt (false );
34973498 }
3498- sendDeviceConnectionIntent (device , state , name );
3499+ if (!isUsb ) {
3500+ sendDeviceConnectionIntent (device , state , name );
3501+ }
34993502 }
35003503 }
35013504
@@ -3587,7 +3590,7 @@ public void onReceive(Context context, Intent intent) {
35873590 + (action .equals (Intent .ACTION_USB_AUDIO_ACCESSORY_PLUG ) ?
35883591 "ACTION_USB_AUDIO_ACCESSORY_PLUG" : "ACTION_USB_AUDIO_DEVICE_PLUG" )
35893592 + ", state = " + state + ", card: " + alsaCard + ", device: " + alsaDevice );
3590- handleDeviceConnection (( state == 1 ), device , params );
3593+ setWiredDeviceConnectionState ( device , state , params );
35913594 } else if (action .equals (BluetoothHeadset .ACTION_AUDIO_STATE_CHANGED )) {
35923595 boolean broadcast = false ;
35933596 int scoAudioState = AudioManager .SCO_AUDIO_STATE_ERROR ;
0 commit comments