我需要一个广泛的接收器实现,用户可以检查手机是从Ringer模式转为静音还是静音振动,反之亦然。
int volumeValue = (Integer)intent.getExtras().get("android.media.EXTRA_VOLUME_STREAM_VALUE");
我尝试了这段代码,但它不会给我太多帮助,因为它从振铃器到静音和静音振动相同,反之亦然。我实际上想要抓住手机从振铃模式转为静音和静音振动的动作 提前致谢
答案 0 :(得分:9)
将此代码写入接收器的onCreate()方法:
BroadcastReceiver receiver=new BroadcastReceiver(){
@Override
public void onReceive(Context context, Intent intent) {
//code...
}
};
IntentFilter filter=new IntentFilter(
AudioManager.RINGER_MODE_CHANGED_ACTION);
registerReceiver(receiver,filter);
还要将此添加到mainfest文件中:
<receiver android:name=".receivers.RingerModeStateChangeReceiver" >
<intent-filter>
<action android:name="android.media.RINGER_MODE_CHANGED" />
</intent-filter>
</receiver>