android - 在运行语音通话期间,如何跟踪接收器端的按键?

标签 android

我希望我的 Android 应用程序向某人发出语音调用并在该人接听电话时播放一个音频文件。该音频文件指示接收端的人员输入一些数字。这就像服务提供商的电话,它向我们发出指示,我们按照它们进行操作。

我如何才能跟踪此人在此通话期间按下的键?

我需要这个,因为这个人给出的数字输入会在应用程序端做一些事情。我也不知道这是否可能。

最佳答案

my application will make a voice call to a person and play one audio file when that person receives the call

安卓不支持。您无权访问通话中的音频流。您最好在通话期间播放音频文件,如果设备处于免提模式,我认为对方会听到您正在播放的内容。

How can I keep track of keys the person is pressing during this call?

很可能,你不知道。可以想象,免提电话技巧的工作原理是相反的(您通过麦克风拾取从扬声器传来的声音),但随后您将需要进行所有音频处理以确定 DTMF 音调。

我强烈建议您为 IVR 使用真正的解决方案,无论它们是像 Voxeo 这样的托管解决方案或者你在 Linux 机器上使用 Asterisk 自己创建的东西。 IVR 不是 Android 的设计目标。

关于android - 在运行语音通话期间,如何跟踪接收器端的按键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7709273/

相关文章:

android - 带有错误处理和进度对话框的通用 AsyncTask

android - 如何使用 SendBird SDK 在 android 中获取超过 1000 个开放 channel 的列表?

android - OSMDroid map 重复

java - 为什么此代码(使用 FusedLocationProviderClient 获取用户的位置)不起作用?

android - Gradle 构建和部署特定的构建类型

未显示 Android Studio 预览

Android 检查蓝牙是否连接

android - Android内核源代码的git repo在哪里?

android - TextView 中的分词

android - 如何在 Android 中打开 MS Office 文件