![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android 技术篇
Lu'Blog
人生的道路上,无论如何都回避不了现实的重重困难,事业、爱情没有永远的一帆风顺,家庭、学业没有真正的心想事成。但是,只要你不去推诿,不胆怯,保持信心满满,保持良好的心态和旺盛的精力,努力的奋进,你就一定会知道“发光并非太阳的专利,你也可以发光”。
展开
-
DecorView与window的创建
前言对于Android开发者来说,View无疑是开发中经常接触的,包括它的事件分发机制、测量、布局、绘制流程等,如果要自定义一个View,那么应该对以上流程有所了解、研究。本系列文章将会为大家带来View的工作流程详细解析。在深入接触View的测量、布局、绘制这三个流程之前,我们从Activity入手,看看从Activity创建后到View的正式工作之前,所要经历的步骤。以下源码均取自An转载 2017-06-28 15:14:07 · 866 阅读 · 0 评论 -
Binder通信三(Binder设计与实现)
摘要 Binder是Android系统进程间通信(IPC)方式之一。Linux已经拥有管道,system V IPC,socket等IPC手段,却还要倚赖Binder来实现进程间通信,说明Binder具有无可比拟的优势。深入了解Binder并将之与传统IPC做对比有助于我们深入领会进程间通信的实现和性能优化。本文将对Binder的设计细节做一个全面的阐述,首先通过介绍Binder转载 2017-07-24 16:41:54 · 390 阅读 · 0 评论 -
ActivityManager框架之简要
ActivityManager在操作系统中有重要的作用,本文利用操作系统源码,逐步理清ActivityManager的框架,并从静态类结构图和动态序列图两个角度分别进行剖析,从而帮助开发人员加强对系统框架及进程通信机制的理解。ActivityManager的作用参照SDK的说明,可见ActivityManager的功能是与系统中所有运行着的Activity交互提供了接口,主要的接口围绕着运转载 2017-07-22 10:52:24 · 2121 阅读 · 0 评论 -
Activity启动过程之简要介绍
本篇来源于,罗老师的博客,推荐直接点击查看。 在Android系统中,Activity和Service是应用程序的核心组件,它们以松藕合的方式组合在一起构成了一个完整的应用程序,这得益于应用程序框架层提供了一套完整的机制来协助应用程序启动这些Activity和Service,以及提供Binder机制帮助它们相互间进行通信。在前面的文章Android进程间通信(IPC)机制转载 2017-07-17 15:20:48 · 469 阅读 · 0 评论 -
Activity和Fragment Transition
这篇文章是对n Android 5.0 中Activity和Fragment transition API的一个总体回顾,这是关于transition系列文章的第一篇。第一章: Activity和Fragment Transition介绍第二章: 深入理解内容变换(Content Transition)第三章上: 深入理解共享元素变换(Shared转载 2017-07-07 16:42:47 · 266 阅读 · 0 评论 -
PackageInfo/ApplicationInfo/ActivityInfo
本节内容是如何获取Android系统中应用程序的信息,主要包括packagename、label、icon、占用大小等。具体分为两个 部分,计划如下: 第一部分: 获取应用程序的packagename、label、icon等 ; 第二部分: 获取应用程序的占用大小,包括:缓存大小(cachsize)、数据大小(datasize)。转载 2017-07-07 11:34:37 · 1586 阅读 · 0 评论 -
性能统计器之利器SamplingProfilerIntegration
来源:《深入理解Android:卷Ⅱ》第3章深入理解SystemServer,本章首先分析了system_server进程的启动过程,然后向读者展示了该进程中所容纳的系统核心服务。本节为SamplingProfilerIntegration分析。下面来看如何使用SamplingProfilerIntegration进行性能统计。系统中有很多重要进程都需要对性能进行分析,比如Zygote原创 2017-07-20 11:05:45 · 677 阅读 · 0 评论 -
浅谈Android Surface机制
1 java层面的Surface 对于Surface我们的认识主要是android的类Surface, android的文档描述Surface是“Handle onto a raw buffer that is being managed by the screen compositor”,这个描述透漏出两个信息:首先,Surface是一个raw buffer(屏幕缓冲区)的句柄,通过转载 2017-07-05 13:47:28 · 14529 阅读 · 0 评论 -
Android Choreographer 源码分析
Android系统从4.1(API 16)开始加入Choreographer这个类来控制同步处理输入(Input)、动画(Animation)、绘制(Draw)三个UI操作。其实UI显示的时候每一帧要完成的事情只有这三种。如下图是官网的相关说明:ChoreographerChoreographer接收显示系统的时间脉冲(垂直同步信号-VSync信号),在下一个f转载 2017-07-05 10:36:55 · 699 阅读 · 0 评论 -
深入分析Java ClassLoader原理
原链接:http://blog.csdn.net/xyang81/article/details/7292380一、什么是ClassLoader? 大家都知道,当我们写好一个Java程序之后,不是管是CS还是BS应用,都是由若干个.class文件组织而成的一个完整的Java应用程序,当程序在运行时,即会调用该程序的一个入口函数来调用系统的相关功能,而这些功能都被转载 2017-07-13 17:08:17 · 269 阅读 · 0 评论 -
android 标题栏,状态栏和导航栏的区别
http://blog.csdn.net/baidu_26352053/article/details/53025912标题栏是手机左上最顶上,显示中国移动,安全卫士,或者当前运行软件的地方,手机的顶部。右边显示信号,电量,网速等等是状态栏。下拉就会出现通知栏。至于导航栏是手机最下面的返回,HOME,主页三个键,有些是一个按钮原创 2017-07-07 14:40:41 · 14857 阅读 · 0 评论 -
深入浅析Android坐标系统
1 背景去年有很多人私信告诉我让说说自定义控件,其实通观网络上的很多博客都在讲各种自定义控件,但是大多数都是授之以鱼,却很少有较为系统性授之于渔的文章,同时由于自己也迟迟没有时间规划这一系列文章,最近想将这一系列文章重新提起来,所以就来先总结一下自定义控件的一个核心知识点——坐标系。很多人可能不屑一顾Android的坐标系,但是如果你想彻底学会自定义控件,我想说了解Android各转载 2017-07-11 14:35:47 · 1298 阅读 · 0 评论 -
Android获取系统service的过程
Android系统中提供了很多Service,如剪切板服务等.很有必要一个app是如何获得这些service的.app中如何获取Android系统中提供的serviceapp是通过context来获取的.例如获取AMS:1ActivityManager am = (ActivityManager)getSystemService(Con转载 2017-06-30 18:28:36 · 4340 阅读 · 0 评论 -
Android中的ViewRootImpl类源码解析
ViewRoot目前这个类已经没有了,是老版本中的一个类,在Android2.2以后用ViewRootImpl代替ViewRoot,对应于ViewRootImpl.Java,他是链接WindowManager和DecorView的纽带,另外View的绘制也是通过ViewRootImpl来完成的。它的主要作用我的总结为如下:A:链接WindowManager和DecorView的纽带转载 2017-06-30 14:03:53 · 893 阅读 · 0 评论 -
Android线程管理(二)——ActivityThread
一、前言 线程通信、ActivityThread及Thread类是理解Android线程管理的关键。 线程,作为CPU调度资源的基本单位,在Android等针对嵌入式设备的操作系统中,有着非常重要和基础的作用。本小节主要从以下三个方面进行分析(原链接):《Android线程管理(一)——线程通信》《Android线程管理(二)——ActivityThread》 《A转载 2017-06-28 13:53:54 · 325 阅读 · 0 评论 -
Binder通信二(MediaService理解Binder机制)
一 说明 Android系统最常见也是初学者最难搞明白的就是Binder了,很多很多的Service就是通过Binder机制来和客户端通讯交互的。所以搞明白Binder的话,在很大程度上就能理解程序运行的流程。我们这里将以MediaService的例子来分析Binder的使用:l ServiceManager,这是Android OS的整个服务的管理程序转载 2017-07-24 16:35:57 · 580 阅读 · 0 评论