随笔分类 - android系统源码分析
android系统源码分析
摘要:android开发基于Android10分析请求Zygote执行Fork一个新的应用程序的过程 ``` ActivityTaskManagerService.activityPaused ActivityStack.activityPausedLocked RootActivityContainer
阅读全文
摘要:android开发基于Android10分析Zygote启动过程以及Fork应用进程的过程分析 Zygote进程的启动,从c代码转到java代码的过程 Android系统启动后第一个进程是init进程,init进程解析init.rc启动Zygote进程 如果是64位解析文件是init.zygote6
阅读全文
摘要:Android开发java.lang.Class里面的native方法实现类源代码 Android SDK里面的java.lang.Class有一些native方法,比如public native T newInstance()等等,它们的实现类对应 art/runtime/native/java_
阅读全文
摘要:Android开发四大组件源码解读简单梳理 Activity启动流程 //主进程-main Activity.startActivity() mInstrumentation.execStartActivity() ActivityTaskManager.getService().startActi
阅读全文
摘要:Android开发系统启动流程涉及到的AMS类和ActivityThread类 ZygoteInit - public static void main(String argv[]) {} - forkSystemServer() //fork系统进程 - mMethod.invoke(null,
阅读全文
摘要:Android开发为什么主线程可以一直运行而不会退出来 App启动后系统通过反射实例化ActivityThread类,并调用main方法,主线程入口: main方法里调用了我们熟悉的Looper的prepare方法,然后调用loop方法进入死循环状态,所以主线程不会退出,退出就异常了。。。 publ
阅读全文
摘要:Android开发Handler是如何确保UI刷新优先执行的源码解读 问题分析 问题1:很久前被问到,requestLayout会立刻触发绘制界面吗?答案是不会立即的,需要等待下一个VSync信号到来(VSync信号即硬件垂直同步信号,比如1秒60帧即1000ms/60约为16.7ms一次)。 当然
阅读全文
摘要:Android启动Service超时ANR异常源代码分析 frameworks/base/services/core/java/com/android/server/am/ActiveServices.java public final class ActiveServices { ... //其中
阅读全文