自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 资源 (7)
  • 收藏
  • 关注

原创 深入分析vold、MountService(and5.1)

Vold:Volume Daemon,管理和控制Android平台外部存储设备的后台进程,包括SD卡的插拔时间检测、SD卡挂载、卸载、格式化等等。MountService和Vold交互,比如会发送一些广播,是接受到了vold的信息之后采取的动作。另外也会向vold发送挂载SD卡等命令。Vold中的NetlinkManager模块(NM)接受来自linux内核的uevent消息。例如

2015-05-28 14:53:45 3066 1

原创 android5.1 PowerManagerService和DisplayPowerControler、DisplayPowerState关系

PowerManagerService在updateDisplayPowerStateLocked中与DisplayPowerControler交互,详细看代码: private boolean updateDisplayPowerStateLocked(int dirty) { final boolean oldDisplayReady = mDisplayReady;

2015-05-26 09:48:52 3724

原创 andjroid5.1 BatteryManager深入分析

BatteryManager主要是去主动查看电池状态,主要通过binder通信去healthd中查看电池的各个属性。可以看下BatteryManager的主要代码 private long queryProperty(int id) { long ret; if (mBatteryPropertiesRegistrar == null) {

2015-05-25 14:00:14 3185

原创 Binder java层实现原理

android使用java实现的,因此binder很多是在java中使用。此篇博客是在罗老师那边博客上节选一段,然后自己分析了下。下面是自己写的一个aidl文件package android.os;interface IHelloService{ void setVal(int val); int getVal();}        注意,这是一个aidl文件,编译后会生成

2015-05-22 18:53:24 1572

原创 Binder c++代码

这篇博客主要看一下binder的一些实现,以及自己写一个实例:Binder中service组件和client组件分别使用模板类BnInterface和BpInterface来描述,前者为Binder的本地对象,后者为代理对象。// ----------------------------------------------------------------------templat

2015-05-22 16:54:24 1853

原创 android5.1添加android长按power键重启功能

当用户长按power键的时候,系统会在PhoneWindowManager中调用mGlobalActions.showDialog,来显示关机、飞行、重启等界面选项。而我们需要在GlobalActions.java中创建一个重启的选项。下面我们从GlobalActions中的createDialog节选一段代码: mItems = new ArrayList();

2015-05-20 09:26:42 5794

转载 android Application Component研究之Activity(一)

转载地址:http://blog.csdn.net/windskier/article/details/7096521    终于下定决心写写ActivityManagerService的源码分析的文章了,ActivityManagerService 业务的整个逻辑关系被各种复杂的数据结构包裹着,因此对ActivityManagerService 的分析主要就是对各种数据结构的分析,明白了这些

2015-05-19 19:07:45 748

转载 android Application Component研究之Activity(二)

转载地址:http://blog.csdn.net/windskier/article/details/7172710上篇文章分析完了task的创建或者复用,接下来接着分析activity在启动过程中还有哪些工作需要去完成?首先给出整个activity的过程图。    1. Starting Window    当该activity运行在新的task中或者进程中时,需要在activ

2015-05-19 18:22:59 946

转载 android system.img,ramdisk.img,boot.img 分析

android system.img,ramdisk.img,boot.img 分析        android 源码编译后得到system.img,ramdisk.img,userdata.img映像文件。其中, ramdisk.img是emulator的 文件系统,system.img包括了主要的包、库等文件,userdata.img包括了一些用户数据

2015-05-14 17:29:56 1668

转载 Linux 挂载概念 理解

    Linux 挂载概念 理解            准备知识: 文件系统中的相关目录:dev      //设备文件media  //挂载媒体设备,如光驱、U盘等mnt    //目录是让用户临时挂载别的文件系统,如挂载Windows下的某个分区,ubuntu默认还是挂载在/media目录。磁盘分区:硬盘包括IDE和SCSI两种接口。其中,

2015-05-14 17:13:33 892

转载 android启动过程及各个镜像间的关系

android启动过程及各个镜像间的关系  Android启动过程 Android在启动的时候,会由UBOOT传入一个init参数,这个init参数指定了开机的时候第一个运行的程序,默认就是init程序,这个程序在ramdisk.img中。可以分析一下它的代码,看看在其中到底做了一些什么样的初始化任务,它的源文件在system/core/init/init.c中。它

2015-05-14 16:52:09 1780

转载 android Intent、pendingIntent机制详解

什么是IntentIntent是一种运行时绑定(run-time binding)机制,它能在程序运行过程中连接两个不同的组件。通过Intent,你的程序可以向Android表达某种请求或者意愿,Android会根据意愿的内容选择适当的组件来完成请求。比如,有一个Activity希望打开网页浏览器查看某一网页的内容,那么这个Activity只需要发出WEB_SEARCH_ACT

2015-05-12 16:43:57 2416

原创 Android5.1AlarmManagerService深入分析(Android4.4补充)

由于在我的博客中Android4.4已经比较详细的分析了AlarmManagerService,因此这里主要分析一下差异,在我看来5.1的在AlarmManagerService的改动还是比较大的。先看AlarmManager新增了一个接口: public void setAlarmClock(AlarmClockInfo info, PendingIntent operat

2015-05-12 10:55:24 5282 1

原创 android5.1BatteryService深入分析

先贴一张类与类之间的关系图:构造函数只是从资源中取一些值。 public BatteryService(Context context) { super(context); mContext = context; mHandler = new Handler(true /*async*/); mLed =

2015-05-11 18:50:09 4226

转载 android4.4 AlarmManagerService深入分析

AlarmManager深入分析转载地址http://blog.csdn.net/codefly/article/details/17058425,自己补充了一些代码分析 1.概述        在Android系统中,闹钟和唤醒功能都是由Alarm Manager Service控制并管理的。我们所熟悉的RTC闹钟以及定时器都和它有莫大的关系。为了

2015-05-08 10:43:35 5673

转载 android 4.4 batteryservice 电池电量显示分析

转载地址:http://blog.csdn.net/daweibalang717/article/details/40615453最近工作接触到这么的东西,这是我对整个电池管理方面Java 层的分析。如果想了解底层的话,请看我的博客:android 4.4 电池电量管理底层分析(C\C++层) (http://blog.csdn.net/daweibalang717/article/d

2015-05-07 18:00:30 13323

原创 android4.4 healthd深入分析

先看healthd,healthd直接查看设备节点中各种电池属性,然后调用BatteryService的update函数,下来先看healthd的代码。int main(int argc, char **argv) {    int ch;    klog_set_level(KLOG_LEVEL);    while ((ch = getopt(argc, arg

2015-05-07 16:42:49 3547

原创 Android5.1 PowerManagerService深入分析

PowerManagerService提供Android系统的电源管理服务,废话不多说,直接看代码。先从构造函数,代码如下:    public PowerManagerService(Context context) {        super(context);        mContext = context;   //创建处理消息的线程        mHand

2015-05-06 16:47:46 10197 2

转载 PackageManagerService启动源码分析

了解了Android系统的启动过程的读者应该知道,Android的所有Java服务都是通过SystemServer进程启动的,并且驻留在SystemServer进程中。SystemServer进程在启动时,通过创建一个ServerThread线程来启动所有服务,本文主要介绍Android服务中PackageManagerService服务启动过程。首先介绍一些PackageManagerS

2015-05-06 10:14:09 1494

android关机时间慢

android关机时间慢

2017-01-05

selinux问题

selinux问题

2017-01-05

Android AlarmManager

Android AlarmManager

2017-01-05

跟我一起写makefile

跟我一起写makefile

2016-07-15

opencv 保存录像

opencv中用来保存摄像头录的录像,c++语言摄像头播放录像

2011-09-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除