![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
android源码解析
文章平均质量分 78
王宪明_ZeroSon
王宪明——酷爱android系统开发,热爱手机开发!
展开
-
Android中widget的应用【安卓源码解析三】
最近看widget,这个widget可以任意放到桌面上(前提是你的桌面上有足够大的空间),感觉效果很炫,widget就是一个BroadcastReceiver,它们使用XML metedata来描述widget的细节。AppWidget framework通过Broadcast intents和Widget通信,widget的更新使用RemoteViews来发送。Remote Views被包装成一原创 2011-11-13 21:30:22 · 6057 阅读 · 0 评论 -
Android的全局键(home键/长按耳机键)详解【android源码解析八】
如果想在Android手机要想扩展一个实体键,就我知道而言有两种方法,基于Android4.0的源码来分析的和2.3的源码有点区别,区别不大,下面分享给大家: 转载请标明出处: (一)可以在frameworks层的KeyEvent.java这个类中定义一个值,在PhoneWindowManager.java这个类中做处理就可以了。(Home键就是这么实现的)。效果图如下:原创 2012-05-06 17:45:48 · 36632 阅读 · 36 评论 -
android系统锁屏详解【android锁屏解析二】
谷歌的代码写的确实不错,我很幸运,一开始接触代码就赶上了谷歌这个开源的系统,让我的视野开阔了很多,也让我看到了优秀的代码工程师写到的代码。心怀感恩之心。 --原创 2013-05-29 22:59:12 · 51454 阅读 · 27 评论 -
Android4.2中Phone的P-sensor的应用的分析。
先说现象,现象就是来电话,接通电话,把手机屏幕靠近脸部,遮挡住P-sensor,屏幕变黑了,不遮挡住P-sensor,屏幕就点亮了。接着我们来看看代码流程。 步骤一: 在PhoneGlobals.java文件中onCreate()方法中: 。。。 。。。// lock used to keep the processor awake, when we don't care for the d原创 2013-08-09 21:21:09 · 12430 阅读 · 1 评论 -
Android恢复出厂设置流程分析【Android源码解析十】
恢复出厂设置,关机流程原创 2013-09-24 20:00:32 · 30805 阅读 · 16 评论 -
Android按键灯,指示灯总结【Android源码解析十一】
Android中有各种灯,背光灯,按键灯,指示灯,等等;前几天修改了这部分代码,整理下思路,其实都不难; 首先,来说说指示灯(提示灯),即未接电话,未接短信的时候,会闪灯,这个其实就是NotificationManager这个类中的notify()方法来处理的;流程简单来过一下: Step 1:从应用层发送的notify(),到framework层被Notification原创 2013-09-25 19:38:08 · 19717 阅读 · 4 评论 -
Android4.2锁屏流程【Android锁屏解析三】
谷歌对Android4.2的版本做了一些改动,突出的改动就是锁屏可以添加widget,即锁屏widget,这个是谷歌的一个大的改动,先来说说android4.2做了哪些改动? (1)Lock screen widgets如图: (2)梦话模式的添加 简单介绍如下:白日梦是一个互动屏幕保护程序模式,当用户的设备开始停靠或充电。在这种模式下,系统将启动一枕黄粱 - 远程安装的应用程序提供内容服务原创 2013-07-23 20:00:12 · 28007 阅读 · 10 评论 -
Android广播发送机制剖析【android广播系列二】
上篇博客大致说了说广播的注册机制,动态注册和静态注册广播的原理还不一样,动态广播最后HashMap中了,最后放到mReceiverResolver中,以后当ActivityManagerService接收到广播的时候,它就可以再成员变量mReceiverResolver中找到对应的广播接收者了。下面我们来说说广播的发送机制。 广播发送时候,在Context.java的方法中调用的,有如下方法:原创 2015-05-01 10:27:58 · 12519 阅读 · 1 评论 -
Android广播注册机制剖析【android广播系列一】
广播是android四大组件之一,所以广播的重要性也是显而易见的,最近需要做个功能,需要对广播的机制深入了解,所以我就整理下思路。平时我们写代码的时候,广播只是用来通知机制的,不是用来通信机制,通信机制还是要用binder机制来实现。但是现在市场上的第三方app大部分都是滥用广播,用广播来监听一些事件来实现自启动或者后台启动。这就误解了谷歌的意思。本来很好的组件,被大家滥用,导致用户老是感觉手机的程原创 2015-04-29 09:03:18 · 5236 阅读 · 0 评论 -
Android中Ringtone播放详解【安卓源码解析五】
现在咱们来聊聊android系统中铃声的播放,从framework层面说说Ringtone的播放原理,我在android源码中碰到了播放系统铃声中的问题,所以仔细研究了这方面的知识,现在整理一下,给读者一些帮助,现在我对铃声的播放和设置特别亲切,不管是短信铃声方面的,来电铃声,还是日历铃声,email的铃声,闹钟的铃声,都能解决铃声方面的bug。前面我说了Notification的播放机制,And原创 2011-12-30 22:02:18 · 26622 阅读 · 8 评论 -
Android 下载重复文件命名规则【android源码解析七】
题记:一个人不能在两个同样的坑里摔倒。 去年4月份的时候,我有一个任务,让我写个下载保存文件的方法,如果文件的名字存在,就加“-1”,如果仍然存在,就在-后面的数字加1,例如:文件名:Keep_On_It.mp3,第一次下载是Keep_On_It.mp3,第二次下载名字就保存成:Keep_On_It-1.mp3,第三次下载名字就保存成:Keep_On_It-2.mp3,第四次下载名字就原创 2012-03-11 19:22:23 · 6651 阅读 · 1 评论 -
Android中ICS4.0源码Launcher启动流程分析【android源码Launcher系列一】
最近研究ICS4.0的Launcher,发现4.0和2.3有稍微点区别,但是区别不是特别大,所以我就先整理一下Launcher启动的大致流程。Launcher其实是贯彻于手机的整个系统的,时时刻刻都在运行,要是Launcher不运行了,手机就得黑屏了。Launcher的LauncherMode=singletask,所以说不管Launcher启动了哪个应用,总有个Launcher的实例在堆栈中,并原创 2012-05-20 22:35:37 · 13724 阅读 · 6 评论 -
Android中铃声总结【安卓源码解析一】
最近研究源码程序,改了改手机短信铃声的源码,最近总结了下铃声的代码,写个activity继承PreferenceActivity有:手机短信铃声,手机铃声,闹钟铃声,还有sdcard中的铃声,通过选择相应的铃声,然后读取到xml文件里面,通过读取preference.xml文件,intent传个参数进去intent.putExtra(RingtoneManager.EXTRA_RINGTONE_E原创 2011-10-30 22:10:25 · 17856 阅读 · 18 评论 -
Android中音乐文件的信息详解【安卓源码解析二】
前段时间处理android音乐文件信息,上网查资料发现Android系统自己提供了MediaScanner,MediaProvider,MediaStore等接口并且提供了一套数据库表格,通过 Content Provider的方式把内容共享给用户。说明一下【Android数据是私有的】可以通过Content Provider的方式共享数据,前面我大致介绍了这个Content Provider,A原创 2011-11-06 22:51:42 · 9025 阅读 · 3 评论 -
Android中Notification的framework层讲解【安卓源码解析四】
android的notificaiton的声音sound也是申请的AudioManager机制来播放声音的。最近让我找恢复出厂设置后,手机刚启动,接受短信没有声音,如果恢复出厂设置后,等一会儿,过个2分钟再接受短信,就有铃声了。下面我把我分析代码的方法写下来,给自己和读者一些启发: 日历也是用的是Notification,但是恢复出厂设置后,立马设置日历后,日历可以出声音,我看日历的原创 2011-12-18 17:23:29 · 19192 阅读 · 9 评论 -
Android中launcherMode="singleTask"详解【android源码解析六】
android中launcherMode有4中属性:standard(默认), singleTop,singleTask和 singleInstance;网上有好多例子讲解这四种关系的:下面我列举几个链接: 大明原创---->转载请标明出处:http://blog.csdn.net/wdaming1986/article/details/7304191 htt原创 2012-02-28 23:19:56 · 49053 阅读 · 4 评论 -
Android闹钟拓展版【安卓闹钟可换壁纸版】
经过写上篇文章Android闹钟最终版【android源码闹钟解析】 .发现有一些留邮箱的,但凡留邮箱的,我就发源码过去了,不错,基本上收到邮箱的都留言感谢了,这样我的成就感就多一点,也能有更多留邮箱的。学习是一个相互的过程,就像师说中“问道有先后,术业有专攻,仅此而已!”,知识就是一层窗户纸,捅破了就没什么了,-------->个人浅薄的拙见,在这表达一下! 前段时间参加一个CMD原创 2012-04-19 23:04:10 · 10165 阅读 · 77 评论 -
AndroidICS4.0---->LockScreen锁屏流程【Android源码解析九】
先来说说LockScreen分类; 一、无锁屏; 二、锁屏: 1、UnLockScreen: 图案锁、 PIN锁, 密码锁; 2、LockScreen: 波纹锁; 转载请表明出处:http://blo原创 2012-07-16 22:47:35 · 30626 阅读 · 23 评论 -
Android闹钟最终版【android源码闹钟解析】
我以前写了个复杂闹钟的demo,参见Android闹钟【复杂版】【大明进化十五】 .但是里面的bug有一些,好多人留言,所以我就看看源码,找找原因?顺便把源码代码整理出来,弄成一个完整的可以运行的apk,今天上午就整理了一下,才发现,源码处理的逻辑多一些,考虑的情况多,比如开机后接收一个广播,然后从数据库中取时间和当前时间对比,设置闹钟,当时区改变了,也会发送广播,对闹钟进行设置的。原创 2012-04-14 18:14:12 · 119889 阅读 · 1021 评论 -
Android中Browser中下载覆盖的提示【安卓源码Browser系列一】
安卓官方的Browser的写的真是不怎么样,上个月让我做了一个功能,是修改browser下载的修改,如果sdcard中有了这个文件,就弹出一个Dialog,提示内容为“改文件已经存在,是否覆盖?”,是就删除这个文件,重新下载,否就不做任何操作!谷歌源码的流程是下载文件会另外取个名字,参见Android 下载重复文件命名规则【android源码解析七】这篇文章写得很详细,介绍谷歌源码下载文件后命名规原创 2012-03-30 22:23:16 · 5623 阅读 · 4 评论 -
Android——RuntimePermission介绍
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl原创 2016-07-16 19:45:26 · 3374 阅读 · 0 评论