Android 当电话铃响、收到短信等时,如何暂停音乐?
我正在尝试检测android声音,并在它们发出噪音时暂停应用程序的音乐(暂时或永久) 此代码似乎不起任何作用(stop暂停音乐,p写入日志),但从未调用:Android 当电话铃响、收到短信等时,如何暂停音乐?,android,audio,Android,Audio,我正在尝试检测android声音,并在它们发出噪音时暂停应用程序的音乐(暂时或永久) 此代码似乎不起任何作用(stop暂停音乐,p写入日志),但从未调用: public class PollyPrissyPants extends Activity implements OnAudioFocusChangeListener { // Blah blah blah public void onAudioFocusChange(int mal) { p("--CHAN
public class PollyPrissyPants extends Activity implements OnAudioFocusChangeListener {
// Blah blah blah
public void onAudioFocusChange(int mal) {
p("--CHANGE!!!--" + mal);
stop();
}
// Yada yada yada
}
我也要在别的地方安装吗?@Override是否相关
我没有试过PhoneStateListener,但如果可能的话,我不想把电话、闹钟、通知、游戏等分开处理。我现在正在使用振动,但它作为一个解决方案很糟糕。如果我接到电话,我必须接听,然后快速进入我的应用程序并暂停。您必须使用
AudioFocusListener
向AudioManager注册:
audio = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
audio.requestAudioFocus(this,
AudioManager.STREAM_MUSIC, AudioManager.AUDIOFOCUS_GAIN);
此
参数是对实现OnAudioFocusListener的类的引用
Awesome的可能重复!工作完美:)这是否意味着我应该在启动/停止音乐(如更改请求)时这样做,至少对其他应用程序礼貌一点?创建活动或服务时,你应该只需要请求音频焦点一次。但这是一个好主意,因此没有两个应用程序试图同时播放音乐。