android增加来电闪光灯功能吗,安卓关于来电与短信闪光灯功能研究
手机来电或者通话时闪烁的LED效果,比较绚丽,找了机会,研究了一下。。
一 . 分析过程
1. 既然是闪光,那肯定是跟Light有关系了,于是乎,找到了一个LightService.java的文件,实现了IBinder接口,可以用于进程间通信。看起来好像是找到了 ! 如下:
public class LightsService extends ILightService.Stub {},
但是突然失望的发现,这个对象在安卓系统中并没有公布它的系统服务接口。。 换句话说,我们不能通过
getSystemService(String service_name) 的方式来获取它的引用(Context.jva里面并没有这个服务的字符串)。所以得找另外的方法。
2. 继续寻找哪里有个系统的引用。。好的好的,在SystemServer.java,这个专门用于拉起系统服务的类中,我们找到了这样的代码 lights = new LightsService(context); 是的,它就是在这里实例化的。然后继续调用
Slog.i(TAG, "Notification Manager");
notification = new NotificationManagerService(context, statusBar, lights);
嗯!没错,它被防到通知服务里面去了。^_^, 这个服务我们是可以获取到滴!
NotificationManager notify =(NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
然后我们就可以通过NotificationManager来控制Led灯了!
3. 继续研究NotificationManagerService.java类,终于发现它里面有个BroadCastReceiver, 在onReceive方法里面有这样的代码:
else if (action.equals(TelephonyManager.ACTION_PHONE_STATE_CHANGED)) {
mInCall = (intent.getStringExtra(TelephonyManager.EXTRA_STATE).equals(
TelephonyManager.EXTRA_STATE_OFFHOOK));
updateNotificationPulse();
}
我们都知道, 当电话状态发生改变的时候,我们会发出TelephonyManager.ACTION_PHONE_STATE_CHANGED的广播。
然后这里慢慢进去,就是调用到LightService里面的一些东东了,LightService里面有些本地方法。下面的就是底层做的事情了。
不过,当然,这得咱们的手机支持Led灯才可以呀!
随手所记, 不知所云, ^_^
+5
原创内容
2012-12-29 20:50
分享至:
android增加来电闪光灯功能吗,安卓关于来电与短信闪光灯功能研究相关推荐
- 安卓短信功能全解:调用系统短信功能发送短信、彩信,使用SmsManager发送短信,并监听发送短信的投递情况,使用广播接收器监听接收的短信。
全栈工程师开发手册 (作者:栾鹏) 安卓教程全解 安卓短信功能全解:调用系统短信功能发送短信.彩信,使用SmsManager发送短信,并监听发送短信的投递情况,使用广播接收器监听接收的短信. 首先需要 ...
- 安卓之实现一个简单的短信发送功能
1.首先,新建一个安卓项目,打开项目下的res下的layout,里面有个activity_main.xml布局文件,打开来,修改里面的代码,其中第一个EditText下的android:inputTy ...
- 使用Android studio实现打电话和发送短信的功能
知识点 1:安卓6.0以上的版本如何获取拨打电话和发送短信的"权限" 2.如何进入手机通讯录并返回联系号码 3.如何实现发送短信的功能 //实现拨打电话功能的Activity pa ...
- 手把手教你如何在安卓平台上实现打电话发短信的功能
首发地址 http://www.eoeandroid.com/thread-228079-1-1.html 1 案例目的 本案例通过一个简单通讯工具来巩固android的activity.Linear ...
- android短信接收器的实现,可以实现自动填写短信验证码功能
项目介绍 项目地址: SmsObserverForAndroid 介绍 这是一个用于拦截android实时短信的库,可以进行短信过滤,得到自己想要的内容,可以用于需要自动填写短信验证码的app项目 功 ...
- [Android]手机短信验证功能
介绍 短信验证功能大家都很熟悉了.在很多地方都能见到,注册新用户或者短息验证支付等.短信验证利用短信验证码来注册会员,大大降低了非法注册,很大程度上提高了用户账户的安全性. 目前市面上已经有了很多提供 ...
- android 短信迁移到iphone,将安卓手机上的短信导入到iphone上的方法
很多用安卓手机的朋友们换iphone5之后,之前手机里的一些数据想倒到新手机里都是比较棘手的问题,尤其是不同的操作系统,像android--ios这样,今天看到个新方法,特意转过来给大家分享一下,方法 ...
- Android Studio使用Mob实现短信验证功能遇到的问题解决
一.Mob短信验证 全球领先的数据智能科技平台-MobTech袤博解决 进行注册登入 登入成功后,点击开发者服务中的短信验证,来到开发者平台 填好信息创建成功就是下图,可以看到对应信息如下(AppKe ...
- Android Studio精彩案例(五)《JSMS短信验证码功能实现》
转载本专栏文章,请注明出处,尊重原创 .文章博客地址:道龙的博客 很多应用刚打开的时候,让我们输入手机号,通过短信验证码来登录该应用.那么,这个场景是怎么实现的呢?其实是很多开放平台提供了短信验证功能 ...
- Android实现短信验证功能(功能的使用)
上一篇我们实现了短信验证功能的前期准备的工作,这篇我们就详细的来介绍如何实现利用手机号完成注册 如何没有做准备工作的,请参看上一篇,开始前的准备:http://blog.csdn.net/u01169 ...
最新文章
- 使用rar备份mysql_用RAR备份源代码_用WSH备份数据库
- Nginx配置跨域请求 Access-Control-Allow-Origin *
- gateway整合hystrix
- 00后社交突围:今天你CDX了吗?
- FreeSql与SqlSugar性能测试对比
- matlab中fir1中的边界频率,FIR滤波器的MATLAB设计与实现.pdf
- 【项目管理和构建】——Maven简介(一)
- 九齐51单片机使用注意事项:不要用float
- LeetCode 660. 移除 9(9进制)
- 2008年3月移动开发Webcast预告
- mysql学习day01
- 在 Ubuntu 中更换字体
- perl语言语法基础
- 网络规划设计师水平考试备考资料(6.光纤相关)
- 智伴机器人自动关机后怎么开机_智伴机器人
- c语言中输出以e为底的指数,c语言中以e为底的指数怎么表示 c++中怎样表示以e为底的...
- JavaScript/js 转 Python 代码转换神器 jiphy
- SELECT 1 FROM DUAL中的DUAL的作用
- pythonrq模块_Python RQ 任务队列中的队列 ( Queue )
- 精读Tree Energy Loss: Towards Sparsely Annotated Semantic Segmentation