gpt4 book ai didi

android - setSpeakerphoneOn()在2.1上不起作用,在2.3上不起作用

转载 作者:行者123 更新时间:2023-12-03 02:22:30 27 4
gpt4 key购买 nike

我需要通过听筒播放一些音频。我正在使用AudioTrack在设备上播放一些声音。音频模式设置为STREAM_VOICE_CALL。
另外,在我的 Activity 中,扬声器通过以下方式关闭:

AudioManager am;            
am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
am.setSpeakerphoneOn(false);

这似乎在2.3设备上完美运行。但是在2.1上,扬声器仍在播放声音。

为了解决此问题,我尝试将setMode()用作:
am.setMode(AudioManager.MODE_IN_CALL);

这样,声音通过听筒播放了2.1和2.3,但大多数时候根本没有播放2.3。
另外,我在某些地方读到,应用程序不应使用setMode(),因为它会影响系统范围的电话状态。
这里: http://code.google.com/p/sipdroid/issues/detail?id=270

有什么帮助吗?

最佳答案

在2.3以下,Android的setSpeakerPhoneOn()有点问题。按照this answer,我认为您需要同时使用这两种API方法。

关于根本没有播放2.3音频的问题,请检查您的通话音量设置(将使用此设置)。在也使用setMode()之前,请尝试跟踪电话所处的状态,一旦不再使用音频管理器,则可能将其设置回MODE_NORMAL

关于android - setSpeakerphoneOn()在2.1上不起作用,在2.3上不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10233201/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com