当设备在android中收到来电时如何播放声音?

Posted

技术标签:

【中文标题】当设备在android中收到来电时如何播放声音?【英文标题】:How can I play sound when device receive incoming call in android? 【发布时间】:2012-04-04 13:22:12 【问题描述】:

我想自动接听来电,我现在已经完成了我想向我的呼叫者播放我自己创建的声音,而不是 android 将使用其默认麦克风..

来电后可以播放自己的声音吗?

我推荐了this。谁能告诉我现在可以吗?

我搜索了很多与此主题相关的内容,但仍然找不到有用的东西。

如果有人知道这件事,请帮助我..

提前致谢。

【问题讨论】:

【参考方案1】:

我发现这可能对你有帮助

引用自:How to automatically answer call and play prerecorded sound out to the caller and DTMF on Android

“不,抱歉,Android 无法访问通话中的音频流。最接近的是,如果设备处于扬声器模式,您可以将音频混合到扬声器播放的内容中,这可能会被麦克风拾取。”

【讨论】:

【参考方案2】:

如此处所述 (http://www.krvarma.com/2010/08/detecting-incoming-and-outgoing-calls-in-android/),您应该能够检测到这一点:

为了检测来电,我们为 行动 android.intent.action.PHONE_STATE。这将被广播 当手机状态发生变化时。接收意图将具有 一个额外的字符串变量 TelephonyManager.EXTRA_STATE 描述 电话状态。如果此状态为 TelephonyManager.EXTRA_STATE_RINGING 然后会有另一个额外的字符串变量 TelephonyManager.EXTRA_INCOMING_NUMBER。该变量包含 来电号码。请注意,此变量将不存在 当状态不是 TelephonyManager.EXTRA_STATE_RINGING。

【讨论】:

感谢您的回复。我编辑了我的问题,您现在可以检查一下吗?实际上我已经创建了 Receiver,但是之后我想播放自己的声音可以吗? 你是说用你自己的声音代替安卓使用的铃声吗?如果是这样,只使用 SDK 并设置铃声不是更有意义吗? ***.com/a/1287415/5416 不,亲爱的,我认为你走错了方向。我不想设置铃声我想在来电后播放声音作为来电铃声。当同时接到来电时,我的来电者可以听到我手机播放的声音。

以上是关于当设备在android中收到来电时如何播放声音?的主要内容,如果未能解决你的问题,请参考以下文章

即使在笔记本电脑上播放良好,Kivy 声音也无法在 Android 设备上播放

如何在 Android 设备中检测来电?

当浏览器在后台运行时收到通知时,使用 Firebase 播放声音

设备在播放啥吗?

打开 al 声音在来电后不播放,直到应用重新启动

在android soundpool中播放新声音时如何停止所有其他以前的声音?