我从来没有问过问题——总是能找到这些东西,但这次我真的不知道,甚至不知道在哪里挖。
我试图将传入上行链路流静音(呼叫 smb 时)此时通过电话扬声器播放声音。
播放声音没有问题,但静音流则有问题。这是我尝试过的:
1)Java Reflection 调用 Android Telephony 内部类的方法。
这是作者博客(Prasanta Paul):http://prasanta-paul.blogspot.com/2010/09/call-control-in-android.html http://prasanta-paul.blogspot.com/2010/09/call-control-in-android.html和他的小部件:http://code.google.com/p/phoneaway/ http://code.google.com/p/phoneaway/
我尝试修改 ITelephony.aidl 中的注释功能以静音呼叫流,但它不起作用 - “没有这样的程序......”
2)通过 AudioManager 进行流式传输
audioManager.setStreamMute(AudioManager.STREAM_SYSTEM, true);
audioManager.setStreamMute(AudioManager.STREAM_VOICE_CALL, true);
audioManager.setStreamMute(AudioManager.STREAM_DTMF, true);
audioManager.setStreamMute(AudioManager.STREAM_ALARM, true);
audioManager.setStreamMute(AudioManager.STREAM_NOTIFICATION, true);
audioManager.setStreamMute(AudioManager.STREAM_RING, true);
and
audioManager.setStreamSolo(AudioManager.STREAM_MUSIC, true);
这对上行链路呼叫流没有任何作用。即使在植根手机上。
3)网上关于实现隐藏 API 的文章和 jar 很少。没有文章回答如何将电话静音。
有很多应用程序使用一些未记录的功能和需要 root 访问权限的功能。我真的很想知道人们是如何发现这个隐藏功能以及如何使用它们的。
我还没有发现其中任何一个可以将流静音。
安卓版本: 2.2
Device:三星i5500
如果您知道如何实现电话静音 - 请回答。
P.S.:如果该主题在标准手机上无法实现,请说明如何使用 root 访问权限来做到这一点