I'm trying to make and app like Call Cheater(Originally developed for Symbian OS)
Is it possible to play a music during a phone conversation where receiver and caller should hear the same sound or music?
If yes how can I implement this?
I'm trying to make and app like Call Cheater(Originally developed for Symbian OS)
Is it possible to play a music during a phone conversation where receiver and caller should hear the same sound or music?
If yes how can I implement this?
两个答案,都是有效的,取决于你喜欢多么草率:
1) 不,目前无法将音频注入电话对话。
2)是的,这是可能的。这也是一个丑陋,丑陋的杂物。打开手机的免提功能。创建一个媒体播放器,设置媒体源,将音量设置为 1.0f(最高)并调用player.start()
. 如果电话上的麦克风和扬声器质量合理,通话对方会听到音乐。他或她还将继续听到您所说的任何内容,以及您附近的环境和其他声音。
不,这是不可能的。但是,如果您想深入了解,则可以访问将 Android 手机用作 VoIP 的 GSM 网关,作者得出的结论是
目前的形式无法将 Android 用作 GSM 网关。即使在刷新自定义 ROM 之后,因为它们也依赖于专有的 RIL(无线电接口层)固件。可以消除障碍 1 和 2(API 限制),因为开源社区可以使用源代码以使其成为可能。但是,障碍 3(专有 RIL)取决于硬件供应商。硬件供应商通常不会提供他们的设备驱动程序代码。
我认为这在一种情况下是可能的
1. android 设备中的一些本地音乐播放器在处理这个问题时,他们在 TelephonyManager.EXTRA_STATE_OFFHOOK (OFFHOOK STATE) 中限制音乐,因此无法使用本地播放器和其他播放器(如“poweramp”)播放背景音乐音乐播放器"
2.通过使用 MediaPlayer 类也是不可能的(在文档中明确提到)
3.只有在一种情况下,如果您开发的自定义音乐播放器(不使用 MediaPlayer 类)实现
AudioManager.OnAudioFocusChangeListener 通过使用这个你可以在下面的代码“focusChange = AUDIOFOCUS_LOSS_TRANSIENT”中获取音频管理器的状态(当音乐在后台播放时,这个状态会调用任何来电)这个状态完全在开发人员手中是播放还是暂停音乐。根据您的要求,您询问是否要在通话处于摘机状态时播放音乐,不要在摘机状态下暂停播放音乐。这只有在耳机被禁用时才有可能
AudioManager am = (AudioManager) this.getSystemService(Context.AUDIO_SERVICE);
OnAudioFocusChangeListener afChangeListener = new OnAudioFocusChangeListener() {
public void onAudioFocusChange(int focusChange) {
if (focusChange == AUDIOFOCUS_LOSS_TRANSIENT
// Pause playback (during incoming call)
} else if (focusChange == AudioManager.AUDIOFOCUS_GAIN) {
// Resume playback (incoming call ends)
} else if (focusChange == AudioManager.AUDIOFOCUS_LOSS) {
am.unregisterMediaButtonEventReceiver(RemoteControlReceiver);
am.abandonAudioFocus(afChangeListener);
// Stop playback (when any other app playing music in that situation current app stop the audio)
}
}
};
Note: You can play back the audio data only to the standard output device.
Currently, that is the mobile device speaker or a Bluetooth headset. You
cannot play sound files in the conversation audio during a call.
See official link
http://developer.android.com/guide/topics/media/mediaplayer.html
我认为这是不可能的。虽然我从谷歌游戏中找到了一个名为PHONE MUSIC的应用程序,它声称:“因此,每当有人让你暂停时,只需点击悬停的音符并开始播放音乐。或者在有人与你通话时播放音乐。”
是的,在 Sony ericssion xylophone w20 中是可能的。我在 2010 年拿到了这款手机。但是我还没有见过这种类型的手机。