Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/223.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在android上接收来电时的DTMF检测_Android - Fatal编程技术网

在android上接收来电时的DTMF检测

在android上接收来电时的DTMF检测,android,Android,我想知道我们是否可以在安卓系统中接收DTMF铃声。假设我接到一个电话,一旦我接受了电话,是否可以检测到对方在我们通话过程中按下的按键。关于这一点,我经历了许多堆栈溢出问题,但大多数都没有提供解决方案 如何通过java反射或类似的方式来实现呢?之前所有的文章都是针对2.2和3.0版本的。目前我们是在4.0及以上版本中,那么在4或以上版本中有可能吗 提前感谢SDK中没有可执行此操作的软件包 首先,您需要聆听扬声器的声音,因为您无法录制语音通话: AudioManager mAudioManager

我想知道我们是否可以在安卓系统中接收DTMF铃声。假设我接到一个电话,一旦我接受了电话,是否可以检测到对方在我们通话过程中按下的按键。关于这一点,我经历了许多堆栈溢出问题,但大多数都没有提供解决方案

如何通过java反射或类似的方式来实现呢?之前所有的文章都是针对2.2和3.0版本的。目前我们是在4.0及以上版本中,那么在4或以上版本中有可能吗


提前感谢

SDK中没有可执行此操作的软件包

首先,您需要聆听扬声器的声音,因为您无法录制语音通话:

AudioManager mAudioManager = (AudioManager) Sos.getContext().getSystemService(Context.AUDIO_SERVICE);
int maxVolume = mAudioManager.getStreamMaxVolume(AudioManager.STREAM_VOICE_CALL);
mAudioManager.setStreamVolume(AudioManager.STREAM_VOICE_CALL, maxVolume, AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE);
mAudioManager.setSpeakerphoneOn(true);
此外,本项目可能会帮助您:

我已经做到了,所以我知道这是可能的


祝你好运

@Dany,但是你有没有其他方法来实现这个想法?你怎么能做到?我很感兴趣!只需录制您在麦克风中听到的声音..简单..但声音清晰度不会非常清晰..而且如果您使用蓝牙耳机也无法工作bcz我们直接从内置麦克风录制声音