相关阅读:尝试自己实现Android View Touch事件分发流程 Android View的布局以ViewRootImpl为起点,开启整个View树的布局过程,而布局过程本身…
Android Touch事件分发是Android UI中的重要内容,Touch事件从驱动层向上,经过InputManagerService,WindowManagerServic…
启动 在Android系统启动流程中中我们提到过,AMS是在system_service中启动的, //frameworks/base/services/java/corri/an…
关于获取系统服务的猜想 Android获取系统服务一般都需要用getSystemService指定系统服务名称获取: val wm = getSystemService(Conte…
对zygote的理解 在Android系统中,zygote是一个native进程,是所有应用进程的父进程。而zygote则是Linux系统用户空间的第一个进程——init进程,通过…
Base64是传输字节码的编码,Android开发过程中,图片的加载多数是请求URL路径或者加载本地的图片,当然也有加载服务器用Base64编码过的图片,比如图形验证码。当然图形验…
一. 先简单总结一下比较常见的几个解决方案的弊端: 1. IMEI Android 10 中官方明确说明第三方应用无法获取到IMEI码:Android 10 中的隐私权变更, An…
最近在公司的项目中 , 华为用户反馈出了一个问题 , 华为手机底部有虚拟按键栏把应用的底部内容遮挡住了 , 现在已经把这个问题解决了 , 记录一下,给各位遇到相同问题的童鞋做一下参…
计算机是如何启动的 计算机的硬件包括:CPU,内存,硬盘,显卡,显示器,键盘鼠标等输入输出设备。所有的软件都是存放在硬盘中,程序执行时,需要将程序从硬盘上读取到内存中,然后加载到C…
Retrofit介绍 Retrofit是Square开源的一款基于OkHttp(也是他家的)封装的网络请求框架,主要的网络请求还是OkHttp来完成,Retrofit只是对OkHt…
关于LiveData是什么以及基本使用方式,请参考官方文档:developer.android.com/topic/libra… 简单来说,LiveData是一个可被观察的数据容器…
nativePollOnce的实现函数是android_os_MessageQueue_nativePollOnce,代码如下: android_os_MessageQueue.c…
android studio 4.0 新建类没有修饰符的方法
Android BroadcastReceiver广播简单使用