自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

liangguangyuan的博客

android源码分析

  • 博客(14)
  • 收藏
  • 关注

原创 android 9.0 getIntProperty获取系统当前电量流程分析(一)

上层直接获取系统电量的方法:BatteryManager batteryManager = (BatteryManager) getSystemService(BATTERY_SERVICE);batteryManager.getIntProperty(BatteryManager.BATTERY_PROPERTY_CAPACITY);所以从BatteryManager.getInt...

2020-10-20 11:20:12 1151

原创 android 9.0 getIntProperty获取系统当前电量流程分析(二)

接着看上一篇android 9.0 getIntProperty获取系统当前电量流程分析(一),分析getCapacity在HIDL中的实现service.getCapacity((int result, int value) -> { outResult.value = result; ...

2020-10-20 11:18:21 635 2

原创 上层监听Kernel上报的UEvent事件Demo

最近的项目需要上层判断新外挂的mcu的连接状态 ,其节点自定义为/sys/class/lgy_class/lgy/lgy。在kernel中创建节好点的时候,其实已经有了uevent事件了。上层需要监听的是这个节点虚拟出来的1,在自定义的NeoManagerService.java 服务中添加监听动作;private static final String LG...

2020-08-08 10:34:47 1273

原创 知其然也要知其所以然---Kernel上报电量UEvent事件流程分析

1,kernel-4.4\drivers\power\power_supply_core.c当电量信息需要更新的时候,kernel会调用power_supply_changed_work这个工作队列,使用kobject_uevent函数往上发送uevent事件,action是KOBJ_CHANGE;static void power_supply_changed_w...

2020-08-08 10:34:27 2339 1

原创 知其然也要知其所以然---上层监听Kernel上报的UEvent事件流程分析(一)

1,涉及到的文件frameworks:frameworks/base/core/java/android/os/UEventObserver.javaframeworks/base/core/jni/android_os_UEventObserver.cpp要监听kernel层上报的的uevent事件,首先要做的是自定义一个类继承UEventObserver类并实现其抽象方...

2020-08-08 10:33:01 1913

原创 9.0 SystemUI 状态栏 系统状态图标初始化流程

system_icons.xml<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/system_icons" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center_vertical">

2020-07-17 14:03:22 1228

原创 android 9.0 systemui之通知的处理流程

StatusBarNotification.javaNotification.javaNotificationData.javaNotificationData.Entry通知栏图标类 StatusBarIconView1,NotificationListener.java ---》onNotificationPosted2,NotificationEntryManager.addNotification(sbn, rankingMap)---》addNotificationI.

2020-07-13 20:41:39 881

原创 SystemUI之状态栏StatusBar的加载

一:在Android 9.0 SystemUI的启动这篇文章中介绍到,我们要启动的服务都是在config_systemUIServiceComponents中配置的。

2020-04-21 13:54:12 640 1

原创 android 9.0 系统铃声加载过程及添加卡二默认铃声

1,扫描系统内部存储、外部存储的铃声以下是部分log;从log开始跟这个流程。2019-12-06 10:18:55.493 3256-3256/? V/MediaScannerReceiver: onReceive action = android.intent.action.MEDIA_MOUNTED2019-12-06 10:18:55.498 3256-3256/? D/Medi...

2019-12-09 11:19:43 1915 1

原创 PowerManagerService中的核心方法(三)---updateWakefulnessLocked

updateWakefulnessLocked更新设备的唤醒状态,根据当前的wake locks和用户活动状态决定设备是否需要开始进入屏保状态。如果wakefullness改变,可能会修改mDirty的值。2112 /**2113 * Updates the wakefulness of the device.2114 *2115 ...

2019-08-26 11:56:07 387

原创 PowerManagerService中的核心方法(二)

变量:private int mDirty;//一个位域,指示电源状态的哪些部分已更改并需要重新计算。132 // Dirty bit: mWakeLocks changed133 private static final int DIRTY_WAKE_LOCKS = 1 << 0;134 // Dirty bit: mWakefuln...

2019-08-21 17:27:48 205

原创 PowerManagerService中的核心方法(一)

一:1587 /**1588 * Updates the global power state based on dirty bits recorded in mDirty.1589 *1590 * This is the main function that performs power state transitions.1591 ...

2019-08-15 15:56:53 117

原创 PowerManagerService 注册及初始化分析

service的启动过程:frameworks/base/services/java/com/android/server/SystemServer.java303 public static void main(String[] args) {304 new SystemServer().run();305 } private void ...

2019-08-13 15:21:11 380

原创 9.0 添加自定义服务

1,添加AIDL frameworks\base\core\java\android\os\ILgyManager.aidlpackage android.os;/** @hide */interface ILgyManager{ String getVal(); }2,在frameworks\base\Android.bp中添加我们的AIDL,让其编译进系...

2019-07-15 14:59:17 1250

空空如也

空空如也

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

TA关注的人

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