Android 短按耳机键暂停/播放FM功能的实现
来源:互联网 发布:网络视频会议系统 编辑:程序博客网 时间:2024/05/19 02:17
前言
欢迎大家我分享和推荐好用的代码段~~
声明
欢迎转载,但请保留文章原始出处:
CSDN:http://www.csdn.net
雨季o莫忧离:http://blog.csdn.net/luckkof
正文
短按耳机键默认是暂停/播放音乐功能,按照如下的修改方式可以实现短按耳机键暂停/播放FM
please delete your media button code, modify as below. Thanks:
1. AndroidMenifest.xml :
<receiver android:name=".FMRadioActivity$MediaButtonReceiver"> <intent-filter> <action android:name="android.intent.action.MEDIA_BUTTON" /> </intent-filter> </receiver>
2. FMRadioActivity.java code:
public interface MediaButtonListener { void onMediaButtonCall(Intent intent); } private MediaButtonListener mMediaButtonListener = new MediaButtonListener() { @Override public void onMediaButtonCall(Intent intent) { String action = intent.getAction(); LogUtils.d(TAG, "onMediaButtonCall.action:" + action); KeyEvent event = (KeyEvent) intent.getParcelableExtra(Intent.EXTRA_KEY_EVENT); LogUtils.d(TAG, "onMediaButtonCall.event:" + event); if (Intent.ACTION_MEDIA_BUTTON.equals(action)) { LogUtils.d(TAG, "--Mediareceiver.event.getKeyCode(): " + event.getKeyCode()); LogUtils.d(TAG, "--Mediareceiver.event.getAction(): " + event.getAction()); if (KeyEvent.KEYCODE_MEDIA_PLAY_PAUSE == event.getKeyCode() && event.getAction() == KeyEvent.ACTION_UP) { LogUtils.d(TAG, "--Mediareceiver.pause"); if (mIsPlaying) { LogUtils.d(TAG, "onMediaButtonCall.power down fm"); refreshImageButton(false); refreshActionMenuItem(false); refreshPopupMenuItem(false); refreshActionMenuPower(false); exitService(); } } else if (KeyEvent.KEYCODE_MEDIA_NEXT == event.getKeyCode() && event.getAction() == KeyEvent.ACTION_UP) { if (mIsPlaying) { LogUtils.d(TAG, "onMediaButtonCall.seek next station"); seekStation(mCurrentStation, true); } } } } }; public static class MediaButtonReceiver extends BroadcastReceiver { static MediaButtonListener mListener = null; @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if (null != mListener) { mListener.onMediaButtonCall(intent); this.abortBroadcast(); } } public static void registerMediaButtonListener(MediaButtonListener callback) { mListener = callback; } }onCreate method:
MediaButtonReceiver.registerMediaButtonListener(mMediaButtonListener); ComponentName rec = new ComponentName(getPackageName(), MediaButtonReceiver.class.getName()); mAudioManager.registerMediaButtonEventReceiver(rec);powerupFM method:
mAudioManager.registerMediaButtonEventReceiver(new ComponentName(this.getPackageName(), MediaButtonReceiver.class.getName()));exitService method:
mAudioManager.unregisterMediaButtonEventReceiver(new ComponentName(this.getPackageName(), MediaButtonReceiver.class.getName())); <receiver android:name=".FMRadioActivity$MediaButtonReceiver" > <intent-filter> <action android:name="android.intent.action.MEDIA_BUTTON" /> </intent-filter> </receiver>
- 短按耳机键暂停/播放FM功能的实现
- 短按耳机键暂停/播放FM功能的实现
- Android 短按耳机键暂停/播放FM功能的实现
- FAQ13878][Audio APP]收音机 APP 添加耳机hook键,以实现播放、暂停的功能
- [FAQ13878][Audio APP]收音机 APP 添加耳机hook键,以实现播放、暂停的功能
- mt6735 [Audio APP]收音机 APP添加耳机 hook键,以实现播放、暂停的功能
- android FM播放时拔出耳机后,FM APP出现"拔出耳机,Fm停止"的提示框,然后自动close
- Android FM耳机长按事件
- android FM播放时拔出耳机后FM APP自动close
- android FM播放时拔出耳机后FM APP自动close
- Android FM播放时拔出耳机后FM APP自动close
- Android开发笔记之广播,service实现音乐的播放暂停停止快进等功能
- android发现之旅之媒体按键(耳机按键播放暂停键等)处理过程
- Android 实现能够暂停的录音功能
- Android 实现能够暂停的录音功能
- Android 实现能够暂停的录音功能
- 耳机上按键可以播放和暂停音乐的?
- Android中通过耳机按键控制音乐播放的实现
- Linux DM9000网卡驱动程序完全分析
- mvc表单Form提交
- Documentation/console/console.txt
- 黑马程序员---Java基础学习笔记(IO-前篇)
- SQL Server 2005 加密(安全性:非对称密钥、证书、对称密钥)
- Android 短按耳机键暂停/播放FM功能的实现
- encodeURIComponent编码后java后台的解码
- Python distribution打包&安装流程
- Android Message和obtainMessage的区别
- UVA 571(数论)
- Linux系统安装后的基础优化-基于CentOS(5.8/6.4)
- INSTALL_FAILED_DEXOPT 解决
- TCP/IP网络编程的四书五经
- struct inode 和struct file