1
我似乎無法弄清楚如何檢測用戶何時更改在通話過程中路由音頻的方式。具體來說,監聽用戶何時在通過藍牙耳機和設備耳機路由的音頻之間切換。有人可以指導我做一個很好的例子嗎? 謝謝。如何在Android中撥打電話時監聽音頻路由中的更改
我似乎無法弄清楚如何檢測用戶何時更改在通話過程中路由音頻的方式。具體來說,監聽用戶何時在通過藍牙耳機和設備耳機路由的音頻之間切換。有人可以指導我做一個很好的例子嗎? 謝謝。如何在Android中撥打電話時監聽音頻路由中的更改
在的onCreate或onStartCommand
MyBroadcastReceiver myReceiver = new MyBroadcastReceiver();
IntentFilter filter = new IntentFilter(BluetoothHeadset.ACTION_AUDIO_STATE_CHANGED);
registerReceiver(myReceiver, filter);
在的onDestroy
unregisterReceiver(myReceiver);
廣播接收器類
private class MyBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if(intent.getAction().equals(BluetoothHeadset.ACTION_AUDIO_STATE_CHANGED)){
int state = intent.getIntExtra(BluetoothHeadset.EXTRA_STATE,-1);
switch(state){
case BluetoothHeadset.STATE_AUDIO_CONNECTED:
Log.d(TAG,"Bluetooth connected");
break;
case BluetoothHeadset.STATE_AUDIO_DISCONNECTED:
Log.d(TAG,"Bluetooth disconnected");
break;
}
}
}
}