Android杂谈(27)锁屏实践

转载请注意:http://blog.csdn.net/wjzj000/article/details/78442999

本菜开源的一个自己写的Demo,希望能给Androider们有所帮助,水平有限,见谅见谅…
https://github.com/zhiaixinyang/PersonalCollect (拆解GitHub上的优秀框架于一体,全部拆离不含任何额外的库导入)
https://github.com/zhiaixinyang/MyFirstApp(Retrofit+RxJava+MVP)

写在前面

因为公司发现之前的音乐产品的留存还不错,所以打算进行2.0改版提一提收入。因为只是一个潜在的盈利项目,作为实习生的我便被临时抽到了音乐组做一个替补人员。接到的任务是对锁屏模块进行重构,逻辑不需要重写,因为这个版本的锁屏根据测试情况效果良好,只需要重构一下代码层次。
因此我有机会好好学习一下音乐类项目的锁屏实现,今天就特定记录一下这个过程。

开始

正常的锁屏服务的思路很简单:开启一个服务,动态注册监听屏幕关闭的广播接受者,接收到关屏事件后,开启我们的锁屏页面;同时关闭系统的锁屏页面。
思路是如此,但是具体实现起来就需要考虑很多东西,比如怎么保证Serivce的长时间的存活…

去掉系统锁屏:


//添加<uses-permission android:name="android.permission.DISABLE_KEYGUARD"/>  权限
//去掉系统锁屏页
getWindow().addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
//使Activity在锁屏时仍然能够显示
getWindow().addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);

未完待续

猜你喜欢

转载自blog.csdn.net/wjzj000/article/details/78442999