android 源码
蚁人日记
努力就是有美好时光!分享交流
展开
-
Launcher主题开发
通过Launcher源码分析,加载桌面图标在IconCache(packages/apps/Launcher3/src/com/android/launcher3/IconCache.java)文件中的cacheLocked函数,这个函数做的是:1.先查询IconCache的缓存中是否存在,如果存在就直接从缓存中取出图标,2.如果不存在,则读取Launcher数据库,如果数据库存在,则把相关图标从数据库中读出来并保存到IconCache的缓存中,3.如果数据库不存在,则从系统中的packageMana原创 2021-07-07 10:04:30 · 673 阅读 · 0 评论 -
android 开机三个阶段分析
开机过程中涉及到显示logo 或者是播放动画的主要有如下三个阶段:显示 lk logo ; 显示kernel logo; 开机动画 Bootanimation如下这张ENG 版本开机过程显示图,说明了主要的三个过程:转自:https://blog.csdn.net/w_yongch/article/details/78069875...原创 2021-03-18 15:40:45 · 1059 阅读 · 0 评论 -
android makefile 编译系统
原创 2020-11-12 20:33:20 · 176 阅读 · 0 评论 -
Android Browser分析记录
Android WebView 的使用(超详细用法)https://blog.csdn.net/weixin_40438421/article/details/85700109以上是介绍WebView,WebViewClient,WebSettings各类的主要方法的使用原创 2020-06-19 10:19:01 · 357 阅读 · 0 评论 -
android 源码中的判断某服务是否运行
/** * Judge a service is run or not. * @param context Current application context. * @param className The service class name. * @return Return true if service is running, fal...原创 2019-11-15 16:32:09 · 130 阅读 · 0 评论 -
Android 将MAP格式数据写入XML 将XMP文件读MAP数据格式中
其中涉及的部分类可以自行查询,如:AtomicFile.java FastXmlSerializer.java private static final String APPCONFIG_FILENAME = "appPowerSaveConfig.xml"; private static final String XML_TAG_FILE = "app_powersa...原创 2019-11-01 17:43:16 · 1205 阅读 · 0 评论 -
Android HDMI( 三)
HDMI框架层控制部分别在两个部分:frameworks/base/core/java/android/hardware/hdmiframeworks/base/services/core/java/com/android/server/hdmi如果平台是MTK的,有会一个frameworks/base/services/core/java/com/mediatek/hdmi...原创 2019-08-16 19:02:25 · 5720 阅读 · 0 评论 -
android 源码设计模式之--装饰模式(包装模式:Wrapper Pattern)
1模式定义 通过包装一个装饰对象来动态的扩展其功能(添加功能),且又不需要改变装饰对象的接口(即:在不必改变原类文件和使用继承的情况下,动态的扩展一个对象的功能)2应用场景在不影响其他对象的情况下,以动态、透明的方式给单个对象添加职责。 需要动态地给一个对象增加功能,这些功能也可以动态地被撤销。 当不能采用继承的方式对系统进行扩充或者采用继承不利于系统扩展和维护时。...原创 2019-08-07 21:30:36 · 406 阅读 · 0 评论 -
android 源码设计模式之--适配模式Adapter
1 模式定义 将一个类的接口转换成客户希望的另外一个接口,Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作2 应用场景系统需要使用现有的类,而此类的接口不符合系统的需要,即接口不兼容 想要建立一个可以重复使用的类,用于与一些彼此之间没有太大关联的一些类,包括一些可能在将来引进的一些类一起工作 需要一个统一的输出接口,而输入端的接口不可预知3 ...原创 2019-08-07 16:12:15 · 145 阅读 · 0 评论 -
android 源码设计模式之--状态模式
1模式定义:类的行为是基于它的状态改变的。这种类型的设计模式属于行为型模式。2应用场景1.行为随状态改变而改变的场景。 2、条件、分支语句的代替者。何时使用:代码中包含大量与对象状态有关的条件语句。如何解决:将各种具体的状态类抽象出来。3组成部分1 State接口。2 各个实现了State接口的实体状态类。3 一个带有某个状态的状态封类。4 我们的客户类(测试类...原创 2019-08-06 20:56:18 · 290 阅读 · 0 评论 -
android 源码设计模式之--命令模式(Command Pattern)
1 模式定义 将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或者记录请求日志,以及支持可撤销的操作。就是对命令进行封装,将命令请求者和命令执行者的责任分离开来实现松耦合。2 应用场景系统需要将请求调用者和请求接收者解耦,使得调用者和接收者不直接交互。 系统需要在不同的时间指定请求、将请求排队(如:线程池+工作队列)和执行请求。 系统需要...原创 2019-08-08 23:42:47 · 219 阅读 · 0 评论 -
清华镜像站下载android源码
清华镜像站 :https://mirrors.tuna.tsinghua.edu.cn/声明以下内容转自:https://www.cnblogs.com/shenchanghui/p/8503623.html根据教程内容,下载Android源码。中间也遇到几个坑。。。以下是下载步骤: 1.打开终端 2.依次输入以下命令:mkdir ~/binPATH=...转载 2019-07-03 10:10:00 · 2218 阅读 · 1 评论 -
android 源码中的回调
1.要实现一个回调,一般需要三个类: 定义接口类、实现接口类、设置触发接口类; 2.在android中,回调是经常用到的,例如view的点击事件以及各种监听事件。还是如Activity中的生命周期的那六个方法,我们都不是显示的调用 ,其实这都是回调, 先看最常近的onClicklistener(1) alps\frameworks\base\core\java...原创 2019-07-30 09:43:12 · 282 阅读 · 0 评论 -
android 源码设计模式之--观察者模式
1模式定义: 定义对象间的一种一对多的依赖关系,当一个对象的状态发送改变时,所有依赖于它的对象都能得到通知并被自动更新2应用场景 当一个对象的状态改变时,与它所有的关联对象都会更新它已存在自己内部的状态3组成部分 观察者,我们称它为Observer,有时候我们也称它为订阅者,即Subscriber 被观察者,我们称它为Observable,即可以被观察的东西...原创 2019-07-31 10:53:45 · 198 阅读 · 0 评论 -
android 源码设计模式之--策略模式
1 概念定义 策略模式:就是把同一个功能或算法等抽象为一个接口方法。具体的实现用单独的类实现这个接口。然后我们再根据实际情况选择不同的算法或者策略(不同的实现类)来完成该功能,通俗来讲,找出应用中可能需要变动的地方,把它们独立出来,并封装起来,不要和那些不需要变化的代码混在一起,使代码更加有弹性和扩展性。2应用场景 系统有某部分功能是经常需要增加匹配功...原创 2019-07-31 20:17:40 · 287 阅读 · 0 评论 -
android 源码设计模式之--代理模式(Proxy)
1 模式定义 指具有与被代理对象相同的接口(此处的接口是指:方法)的类,客户端必须通过【代理类】来间接的与【被代理目标类】进行交互,2 应用场景 一般是因为客户端不想直接访问实际的对象,或者访问实际的对象存在困难,因此通过一个代理对象来完成间接的访问。3 组成部分Subject【抽象对象角色】 : 声明了目标对象和代理对象的共同接口/父类【动态代理只能是接口】。该...原创 2019-08-08 16:54:12 · 504 阅读 · 0 评论