自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 收藏
  • 关注

原创 LooperExecutor--实现阻塞等待异步执行

Android源码级实用类 LooperExecutor,可实现阻塞等待异步执行结果

2022-06-16 19:41:16 421 1

原创 Android 11 显示状态与背光亮度调整

一、函数updatePowerStateLocked根据MDRTY中记录的脏位更新全局电源状态。这是执行电源状态转换的主要功能。我们将它们集中在这里,这样每当重要的事情发生变化时,我们就可以完全重新计算权力状态,并确保每次都以同样的方式进行。重点是在这里收集所有的转换逻辑。 /** * Updates the global power state based on dirty bits recorded in mDirty.

2022-03-10 19:34:10 8123 21

原创 Android 电池系统节点信息简述

Current Battery Service state: AC powered: false USB powered: true Wireless powered: false Max charging current: 500000 Max charging voltage: 5000000 Charge counter: 2238960 statu

2022-01-19 18:15:37 6301

原创 Android 12源码单手模式

Android 12平台上现在支持单手模式了,此功能也是第一次出现在AOSP的源码中,也是Gg仿 IOS 15 单手模式,来追一追,看看其工作原理。1.设置应用功能开关界面com.android.settings.gestures.OneHandedEnablePreferenceController.javacom.android.settings.gestures.OneHandedMainSwitchPreferenceController.javacom.android.settings

2021-11-09 13:50:15 4584

原创 Android 触摸事件转换为鼠标事件

触摸事件常见类型为ACTION_DOWN/ACTION_UP/ACTION_MOVE等。而鼠标在触摸事件类型的基础上又多出ACTION_HOVER_MOVE等类型,同时鼠标左右按键在输入事件中的也对应有BUTTON_PRIMARY/BUTTON_SECONDARY等状态,鼠标的滚轮操作也对应着AXIS_VSCROLL的值。所以若在手机中把显示界面作为鼠标触摸板,把触摸事件转换为鼠标事件,则需要对触摸事件做多个判断,针对不同触摸手势做不同的处理。Android系统对鼠标事件...

2021-10-27 20:27:46 4958

原创 Android11 WMS 之 AppTransition

一.系统的过渡类型 * 未设置过渡。 int TRANSIT_UNSET = -1; * 没有过渡动画。 int TRANSIT_NONE = 0; * 新活动中的窗口正在同一任务中的现有窗口之上打开。 int TRANSIT_ACTIVITY_OPEN = 6; * 最顶层活动中的窗口正在关闭以显示同一任务中的前一个活动。 int TRANSIT_ACTIVITY_CLOSE = 7; * 新任务中的窗口正在另一个

2021-09-09 11:00:11 2943 2

原创 Android 11系统稳定性 --亮屏解锁后闪现一个后台应用界面

查看log发现出现问题后,WelcomeTourActivity界面一直处于EXITING状态,导致其Surface没有destory且会在亮屏后显示在前台。查找其出现的时间为如下(1)Window开始退出动画08-06 18:07:02.142999 1282 3643 V WindowManager: applyAnimation: win=WindowStateAnimator{1ee7238 com.google.android.gm/com.google.android.gm.wel..

2021-08-13 19:29:50 1162 2

原创 Android_11--ActivityRecord的可见性处理

ActivityRecord的可见性处理过程1.RootWindowContainerframeworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java /** * Make sure that all activities that need to be visible in the system actually are and update * their co.

2021-04-09 17:53:29 3109

原创 Android配置文件 Android.bp

(1)把Android.mk 自动转化为Android.bpout/soong/host/linux-x86/bin/androidmk Android.mk > Android.bp(2)Android.mk与Android.bp属性的对应关系func init() { addStandardProperties(bpparser.StringType, map[string]string{ "LOCAL_MODULE": "nam..

2020-12-17 18:00:31 2950

原创 Android Q 应用启动--ActivityThread main()

ActivityThread执行的第一个函数:main public static void main(String[] args) { Trace.traceBegin(Trace.TRACE_TAG_ACTIVITY_MANAGER, "ActivityThreadMain"); // Install selective syscall interception AndroidOs.install(); // Clos.

2020-08-22 15:01:17 1056

原创 android Q HIDL(小屏显示)

ActivityThread执行的第一个函数:main() public static void main(String[] args) { Trace.traceBegin(Trace.TRACE_TAG_ACTIVITY_MANAGER, "ActivityThreadMain"); // Install selective syscall interception AndroidOs.install(); // Cl.

2020-08-12 15:17:07 868

原创 AndroidQ 上滑解锁时锁屏退出与Window切换的源码分析

AndroidQ 上滑解锁与Window切换的源码分析锁屏界面时,touch事件触发界面上滑的动作此处就不再分析,网上已经有很多详细的信息供大家观看,本文主要分析上滑解锁后整个StatusBar Window属性的切换过程,会涉及到StatusBar WindowManager.LayoutParams的焦点变化、高度变化,锁屏壁纸的消失等.(1)PanelBar扩展完全关闭,通知StatusBar面板消失notifyBarPanelExpansionChanged(PanelVie..

2020-07-28 16:41:22 1620 1

原创 android Q 显示系统(一) VSync

(一) VSyncVSync是垂直同期(Vertical Synchronization)的简称。基本的思路是将设备的FPS和显示屏同步起来。其目的避免一种称之为"撕裂"的现象.(1)VSync注册SurfaceFlinger.h 继承自ComposerCallbackclass SurfaceFlinger : private HWC2::ComposerCallback()...

2020-05-06 17:36:53 3055

原创 Android 10 手势导航源码分析

Android O之前的虚拟按键,基本的控制方法都是在SystemUI中做处理的,在Android 10上为了在手势导航操作时其动画更加流畅,与Launcher互动效果更好,google的设计师就把手势导航相关的操作放到了Launcher3中,而且为了与SystemUI进行信息同步,利用两个aidl的文件利用binder做Launcher3与Systemui之前的进程通信。在分析之前我们...

2019-12-12 19:06:33 9039 19

原创 Android 沉浸式导航栏_全面屏适配

由于Android Q出现了系统导航的3中手势切换,沉浸式的导航栏会越来越受大家的关注,所以我根据Android Q Labs的视频。利用java文件进行了沉浸式导航的尝试,供大家借鉴交流。在新建的Android应用中原始的界面是很丑的,如下所示:下部会有黑色的导航栏出现,看着是很丑的。而对其进行沉浸式处理后会有不一样的效果。(1)设置View属性View.SYSTEM_UI_...

2019-11-22 00:04:22 2988

原创 Android Q 滑屏解锁误操作判断规则

滑屏解锁误判断规则。android P之前:com.android.systemui.statusbar.phone.PanelView protected boolean flingExpands(float vel, float vectorVel, float x, float y) { if (isFalseTouch(x, y)) { ...

2019-11-13 20:09:58 1899

原创 android P版本 位置服务使用及数据精度处理。

(一)在使用位置服务之前,最好了解一下我们的对象,这样才能尽量少的犯错误。问题:位置服务是什么?位置服务的有那些特性呢?a.位置服务是什么?(百度百科)对于位置定义有如下几种方法:A)AOA(angle of arrival )指通过两个基站的交集来获取移动台(Mobile station)的位置;B)TDOA(time difference of arrival)工作原...

2019-10-07 16:32:03 712 1

原创 android P版本 系统稳定性问题案例分析(二)

前言:对这个专题总结就到此为止了。android是一个内容庞大的操作系统,若没有足够的时间去研究学习那就只知皮毛了,遇到问题也无法真正的解决,所以深入源码、了解原理才是系统稳定性的关键,案例看起来是没有什么意义的。而且我对案例的总结只是对问题分析过程的记录,没有过多的分析代码,只是想为此类问题提供下分析的思路。一、老化测试时SystemUI 出现anr问题问题分析:(1)机器在进行...

2019-09-11 20:55:54 1488 1

原创 android P版本 系统稳定性问题案例分析(一)

一、无锁状态下,灭屏后亮屏设置界面滑动无效。问题分析:(1)可在其他应用界面复现,非应用问题。(2)问题必现,点击动作有效但无动画效果,滑动后界面不刷新但可确认对应位置在后台已发生变化,非输入系统错误。(3)滑动后界面没有刷新,截图后与当前设备显示相同,排除显示系统的硬件问题,为显示系统的软件问题。问题排查:(1)根据绘制流程添加log分析。performTraver...

2019-09-10 11:29:43 4610 9

原创 Systemui源码分析 -- 状态栏图标颜色变化过程.

一 framework层对状态栏颜色以及分屏状态时颜色的处理过程。PWM根据所有窗口状态选择合适窗口的WindowState,依据WindowState开始更新SystemUI的状态。此处主要分析对状态栏有影响的重要函数步奏。(1)frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager...

2019-04-28 18:06:25 3750

原创 Andorid P ActivityManagerService -Stack结构

Andorid 9.0 ActivityManagerService 中的Stack结构如下. (1) frameworks/base/server/core/java/com/android/server/am/ActivityManagerService.java /** Run all ActivityStacks through this */ final Ac...

2019-03-30 17:24:14 508

原创 Android P WindowManager (三) window添加时主要参数的分析(2) client(IWindow)。

在WindowManagerService.addWindow每次的client(IWindow)是不同的,而client是什么呢?这个要从这个client在应用的创建开始了(1)应用端client的初始化和传递frameworks/base/core/java/android/view/ViewRootImpl.java //在ViewRootImpl的构造器中创建了clie...

2019-02-28 16:12:51 709

原创 Android P WindowManager (二) window添加时主要参数的分析(1) WindowSession。

由《Android P 系统界面 (一) 直观感受每个window的添加》中我们可以看到每次的添加一个window时有以下的规律:1.每次的(IWindow)client是不同的2.每个window添加时都会生成一个WindowState另外我在之前添加的log的基础上又添加了对session的观察,发现了第三条规律:/base/services/core/java/com/and...

2019-02-27 20:06:41 1092

原创 android O版本 设置(Settings)模块总结--设置的启动界面选择

之前一直在公司做设置模块的功能修改,现在转到了其它模块,所以就总结一下吧,有不足之处,还请指正.设置是整个android系统的重要应用,涉及的都是系统功能,本文只是对其结构进行解析,功能控制等不做说明(1)设置的界面选择设置里面的Activity乍一看和常规应用的Activity有很大不同,但是原理都是一样的,不过设置为了更方便的区分和获取信息,在AndroidManifest.xml...

2019-02-27 17:30:56 4538

原创 android O版本 设置(Settings)模块总结--设置的一级界面的加载

O版本的设置界面相对有N有了一些变化,O上面增加了顶级类别的菜单,而之前一些在一级菜单的则移动到了二级界面里面,如"WIFI","移动网络"等之前是在一级界面的,而在O上则移动到了新菜单"网络和互联网"中,但是在数据在加载方面,并未做较大的变化.(a)一级界面--顶级菜单的数据加载 在上一篇 <<android O版本 设置(Settings)模块总结--设置的启动界...

2019-02-27 17:30:23 2862 2

原创 Android P WindowManager (一) 直观感受每个window的添加

为了更直观的看到window的添加,我在WindowManagerService.java中添加如下log,这样可以看到每次添加窗口的细节 +++ b/base/services/core/java/com/android/server/wm/WindowManagerService.java@@ -1424,7 +1424,13 @@ public class WindowManag...

2019-02-26 11:05:05 1302

原创 android ANR实例分析

一.实例// NOT RESPONDING: com.android.settings (pid 5255)ANR in com.android.settings (com.android.settings/.SubSettings), time=11135301Reason: Input dispatching timed out (Waiting because no wind

2017-11-16 17:16:06 871

原创 Android N版本 设置深层界面无法监听按键事件解决方法!

Android N版本 设置深层界面无法监听按键事件解决方法!由于Android N之前深层界面类继承至Activity,对于返回按键的处理直接重写onKeyDown方法保存了当前编辑的内容。而在N平台上,google将深层界面实现成为了一个SettingsFragment,不能直接重写Activity的onKeyDown方法监听返回事件了。google源代码中试图通过view

2017-03-27 17:58:06 543

原创 android SystemUI显示问题。

基于MTK平台,多事对于客户需求的修改,原创请多支持。N版本(1)设置闹钟后多次显示在Stausbar的Notifacition区域多次显示相同的闹钟图标。在函数 public void updateNotificationIcons(NotificationData notificationData)中增加一个判断主要是根据Notification的Pac...

2017-03-25 20:19:50 1307

原创 android 学习中实用(一)

(1)在Android系统中,printk输出的日志信息保存在/proc/kmsg中,要查看/proc/kmsg的内容   ($ dmseg)#######################################################################################################(2)使用 adb shell geteve

2017-03-11 15:31:19 300

翻译 Android Studio导入android源码

关于Android Studio的好处我就不用说了,下面两点就足矣让你转投Android Studio了:     1、Android Studio是Google官方指定的,目前官网已经去掉了ADT, 大家可以在Android开发者官网 中进行查看,目前只有Android Studio提供下载了.     2、Google也表示ADT不再进行维护了.转投Android St

2017-01-19 18:08:42 627

转载 android.mk文件编写

Building a simple APK  LOCAL_PATH := $(call my-dir)  include $(CLEAR_VARS)     # Build all java files in the java subdirectory  LOCAL_SRC_FILES := $(call all-subdir-java-files)     # N

2017-01-12 10:44:05 633

转载 android 实现关机

转载至:http://www.cnblogs.com/snake-hand/p/3141014.html  start开始从网上搜索,通过发action的方式实现,不过一直没有成功。 Intent intent = new Intent();   intent.setAction(Intent.ACTION_SHUTDOWN); sendBroadcast(intent);

2016-12-23 13:44:48 381

原创 Binder学习

(1)Binder驱动的最重要函数  # alps/kernel-3.18/drivers/staging/android/binder.cstatic long binder_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)其中cmd中最重要的是:BINDER_WRITE_READ case BINDE

2016-12-13 15:41:52 228

原创 我的记录

(1)在Android系统中,printk输出的日志信息保存在/proc/kmsg中,要查看/proc/kmsg的内容 ($ dmseg)(2)使用 adb shell getevent 查看输入事件:/dev/input/event*(3)adb shell amadb shell am broadcast 后面的参数有:[-a <ACTION>][-d <DA...

2016-12-13 15:34:45 223

转载 android 输入事件

(1)使用 adb shell getevent 查看输入事件:/dev/input/event*http://www.2cto.com/kf/201412/361281.htmladd device 1: /dev/input/event5  name:     "m_acc_input"add device 2: /dev/input/event4  name:    

2016-12-07 18:07:59 492

转载 最新的windows xp sp3序列号(绝对可通过正版验证)

http://www.dnwx.com来源:未知 作者:dnwx.com 时间:2013-07-21 最新的windows xp sp3序列号(绝对可通过正版验证)MRX3F-47B9T-2487J-KWKMF-RPWBY(工行版)         可用(强推此号)QC986-27D34-6M3TY-JJXP9-TBGMD(台湾交大学生版)       可用

2016-11-24 13:58:42 2379

翻译 Android Camera

为应用程序创建自定义摄像头界面的一般步骤如下:   (1) 检测和访问摄像机 - 创建代码以检查摄像机是否存在并请求访问。   (2) 创建预览类 - 创建扩展SurfaceView并实现SurfaceHolder界面的相机预览类。这个类预览来自相机的实时图像。      (3) 构建预览布局 - 一旦你拥有相机预览类,创建一个包含预览和你想要的用户界面控件的视图布局。   (

2016-11-22 11:20:03 188

转载 真正从零开始,TensorFlow详细安装入门图文教程!

http://www.leiphone.com/news/201606/ORlQ7uK3TIW8xVGF.html

2016-11-22 11:18:39 234

转载 怎样安装 JDK8 到 Ubuntu 14.04 和 12.04

文章转载自:http://www.cnblogs.com/wxishang1991/p/5662499.html

2016-11-03 14:01:10 273

空空如也

空空如也

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

TA关注的人

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