上一页 1 2 3 4 5 6 7 8 ··· 18 下一页
摘要: 一、测量方式 1. 使用AM服务启动App的第一个界面并输出应用启动时间。 通过adb命令执行am命令启动App并出界应用启动时间。 命令格式: adb shell am start -W packagename/packagename.首页Activity 示例: adb shell am sta 阅读全文
posted @ 2021-10-05 21:41 naray 阅读(1244) 评论(0) 推荐(0) 编辑
摘要: 一、App启动分类 1. App启动时间 App启动时间(App startup time)是官方给出的指标标准。 2. 启动分类: 冷启动 热启动 温启动 二、各分类启动过程 冷启动 桌面图标被点击触发应用启动,从AMS收到启动应用事件,通知Zygote启动应用进程,到应用生命周期执行,到Acit 阅读全文
posted @ 2021-10-05 20:51 naray 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 一、子线程创建Handler的前题条件是什么 子线程创建Handler必须先创建子线程Looper。 假如,在子线程不先创建Looper会怎样? Thread { _handler = Handler() }.start() 结果: E/AndroidRuntime: FATAL EXCEPTION 阅读全文
posted @ 2021-10-04 21:58 naray 阅读(923) 评论(0) 推荐(0) 编辑
摘要: 一、Binder是什么? Binder是Android提供的进程IPC通信的工具。Binder通信使用的数据结构是Parcel。 二、Binder的优点? 在Linux中进程IPC通信方式有很多,其中最常用的管道、Socket、共享内存、信号等。为什么Android还要设计一套新的IPC通信机制。 阅读全文
posted @ 2021-10-04 20:08 naray 阅读(50) 评论(0) 推荐(0) 编辑
摘要: 一、Parcel是什么 Container for a message (data and object references) that can be sent through an IBinder. A Parcel can contain both flattened data that wi 阅读全文
posted @ 2021-10-04 16:22 naray 阅读(815) 评论(0) 推荐(0) 编辑
摘要: 一、Android中常用的IPC通信 管道 Socket 共享内存 信号 二、管道 管道是一种IPC通信方式,分为有名管道和无名管道,无论是有名管道还是无名管道其原理都是在内核开辟一块缓存空间,这段缓存空间的操作是通过文件读写方式进行的。 管道为分半双工和全双工: 半双工:半双工管道是单向通信,进程 阅读全文
posted @ 2021-10-04 15:49 naray 阅读(343) 评论(0) 推荐(0) 编辑
摘要: 一、Surface的Buffer是从哪里来的? 源码:frameworks/base/core/java/android/view/ViewRootImpl.java View触发绘制是通过requestLayout()函数或者setLayoutParms()函数: performTravsersa 阅读全文
posted @ 2021-10-03 01:55 naray 阅读(1408) 评论(0) 推荐(1) 编辑
摘要: 一、Surface是什么 Handle onto a raw buffer that is being managed by the screen compositor. 大概意思是处理由屏幕合成器管理的原理缓存区。 二、Surface实现原理 在Surface类里有一个Canvas对象,在Canv 阅读全文
posted @ 2021-10-02 22:59 naray 阅读(1347) 评论(0) 推荐(0) 编辑
摘要: 一、SurfaceFlinger是什么? SurfaceFlinger接受缓冲区,对图形数据进行合成,然后发送到屏幕渲染。 WindowManager与SurfaceFlinger关系 WindowManager为SurfaceFlinger提供缓冲区和窗口元数据,SurfaceFlinger可使用 阅读全文
posted @ 2021-09-27 20:54 naray 阅读(1703) 评论(0) 推荐(0) 编辑
摘要: 一、简介 Service是Android四大组件之一,也可以称为后台服务。Service是一个可以长期在后台执行而不用提供用户界面的应用组件。服务可由其它应用组件启动,即使切换到其它应用组件,服务依然会在后台继续运行。 此外,组件可以绑定到服务,并与之进行交互,甚至是执行进程间通信(IPC)。 例如 阅读全文
posted @ 2021-09-20 16:44 naray 阅读(999) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 18 下一页