0
我试图在通话模式下将设备音频设置为扬声器。
它在我检查的大多数设备上工作。OnePlus 5无法通过音频管理器在通话模式下启动扬声器
我购买了OnePlus5设备,但没有使用它。
final AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
audioManager.stopBluetoothSco();
audioManager.setBluetoothScoOn(false);
audioManager.setSpeakerphoneOn(true);
当我检查的结果是假的:
audioManager.isSpeakerphoneOn() // return false
,我可以在logcat中看到,当我从原生拨号器,他们是用一些不同的对象设置扬声器设置扬声器:
08-14 09:53:39.778 1562-2928/? I/Telecom: CallAudioRouteStateMachine: Message received: USER_SWITCH_SPEAKER=1104, arg1=0: ICA.sAR->[email protected]_0
08-14 09:53:39.778 836-14835/? D/AudioPolicyManagerCustom: getOutputForDevice() returns output 13 flag 2
08-14 09:53:39.778 1562-2928/? I/Telecom: Event: Call [email protected]: AUDIO_ROUTE, Leaving state ActiveEarpieceRoute: ICA.sAR->[email protected]_0
08-14 09:53:39.778 1562-2928/? I/Telecom: Event: Call [email protected]: AUDIO_ROUTE, Entering state ActiveSpeakerRoute: ICA.sAR->[email protected]_0
08-14 09:53:39.778 836-1095/? D/APM_AudioPolicyManager: startOutput() output 13, stream 1, session 25
08-14 09:53:39.778 1562-2928/? I/Telecom: CallAudioRouteStateMachine: turning speaker phone true: ICA.sAR->[email protected]_0
08-14 09:53:39.778 836-1095/? D/AudioPolicyManagerCustom: getNewOutputDevice() selected device 1
08-14 09:53:39.778 836-1095/? D/APM_AudioPolicyManager: setOutputDevice() device 0001 delayMs 0
08-14 09:53:39.779 836-1095/? D/APM_AudioPolicyManager: startOutput()--
08-14 09:53:39.779 1562-2928/? V/AudioManager: Elem: dalvik.system.VMStack.getThreadStackTrace(Native Method)
08-14 09:53:39.779 1562-2928/? V/AudioManager: Elem: java.lang.Thread.getStackTrace(Thread.java:1566)
08-14 09:53:39.779 1562-2928/? V/AudioManager: Elem: android.media.AudioManager.setSpeakerphoneOn(AudioManager.java:1286)
08-14 09:53:39.779 1562-2928/? V/AudioManager: Elem: com.android.server.telecom.CallAudioRouteStateMachine.setSpeakerphoneOn(CallAudioRouteStateMachine.java:1353)
08-14 09:53:39.779 1562-2795/? D/VibratorService: timeout: 0, startTime: 6699313, pattern: [0, 10], vibrateIntensity: Middle, repeat: -1, usageHint: 13, uid: 1001, opPkg: com.android.incallui
[ 08-14 09:53:39.780 1562: 8387 E/ ]
Vibrator on : 10
我已经使用这个权限。 – motis10
我添加此权限可以在OnePlus5上运行!但仍然扔这个日志。 – Blanke