安卓锁屏音乐控件开发

             首先我个人先吐槽一下,这是一个吃力不讨好的活。为什么?因为现在安卓手机的各种定制rom五花八门,各种各样,miui、乐蛙、emui、努比亚。。。我们今天要做的事情就是要在各种系统的锁屏界面,出现一个音乐控件,用来做一些简单的音乐播放的控制。

             做之前,习惯性的看了各大家的做法:酷我、多米等,这些家的做法的思路都一样,都是在自己的应用中监听power锁屏事件,然后加一个“假锁屏”,即每次锁屏再打开的时候,首先显示的是自己音乐的锁屏,滑开以后再跳到系统的锁屏。这样做的好处是,通吃各种系统,弊端也是显而易见:锁屏太多了!!!尼玛,对于普通用户,究竟要滑几次才能解开?

假锁屏的方案弃置后,只能牺牲适配性,而考虑实用性,于是有了本文。本文做的是,针对安卓原生系统开发的音乐控件!因为是建立在原生的keyguard上的,所以一些野路子第三方ROM不支持,也是正常。正文开始:

              基于原生android开发,需要用的一个很重要的类RemoteControlClient,RemoteControlClient是从API 14也就是android 4.0开始出现的类,用于在锁屏状态控制音乐播放。界面是系统提供的。

api doc文档上附了一段注册代码

<pre class="prettyprint" name="code" style="white-space: pre-wrap; word-wrap: break-word; font-size: 14px; margin-top: 0px; margin-bottom: 1em; color: rgb(0, 102, 0); line-height: 1.5; font-family: 'courier new', courier, monospace; padding: 1em; overflow: auto; border: 1px solid rgb(221, 221, 221); background-color: rgb(247, 247, 247);"><span class="typ" style="color: rgb(102, 0, 102);">ComponentName</span><span class="pln" style="color: rgb(0, 0, 0);"> myEventReceiver </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln" style="color: rgb(0, 0, 0);"> </span><span class="kwd" style="color: rgb(0, 0, 136);">new</span><span class="pln" style="color: rgb(0, 0, 0);"> </span><span class="typ" style="color: rgb(102, 0, 102);">ComponentName</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="pln" style="color: rgb(0, 0, 0);">getPackageName</span><span class="pun" style="color: rgb(102, 102, 0);">(),</span><span class="pln" style="color: rgb(0, 0, 0);"> </span><span class="typ" style="color: rgb(102, 0, 102);">MyRemoteControlEventReceiver</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="kwd" style="color: rgb(0, 0, 136);">class</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln" style="color: rgb(0, 0, 0);">getName</span><span class="pun" style="color: rgb(102, 102, 0);">());</span><span class="pln" style="color: rgb(0, 0, 0);">
 </span><span class="typ" style="color: rgb(102, 0, 102);">AudioManager</span><span class="pln" style="color: rgb(0, 0, 0);"> myAudioManager </span><span class="pun" style="color: rgb(102, 102, 0);">=</span><span class="pln" style="color: rgb(0, 0, 0);"> </span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">AudioManager</span><span class="pun" style="color: rgb(102, 102, 0);">)</span><span class="pln" style="color: rgb(0, 0, 0);"> getSystemService</span><span class="pun" style="color: rgb(102, 102, 0);">(</span><span class="typ" style="color: rgb(102, 0, 102);">Context</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln" style="color: rgb(0, 0, 0);">AUDIO_SERVICE</span><span class="pun" style="color: rgb(102, 102, 0);">);</span><span class="pln" style="color: rgb(0, 0, 0);">
 myAudioManager</span><span class="pun" style="color: rgb(102, 102, 0);">.</span><span class="pln" style="color: rgb(0, 0, 0);">registerMediaButtonEventReceiver</span><span class="pun" style="color: rgb(102, 102, 0);">
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值