![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android面试
文章平均质量分 89
纳兰寒明
android小菜鸟,期待高飞的一天!
展开
-
2021年4-5月大厂面试题
京1:butterknife原理,R2文件?Handler异步消息,同步屏障?同步消息?looper.perpare()何时创建?message.obtain()?Vsync,垂直同步信号?UI滑动渲染优化?内存泄漏?leakcarray原理?oom的条件?开辟多个线程导致oom?bitmap的存储形式在系统中的存储?存储在哪?布局优化?LinearLayout draw几次?IPC机制,binder机制的理解?为什么使用线程池?(一个服务端对多个客户端)flutter渲染原创 2021-06-10 14:39:18 · 2793 阅读 · 1 评论 -
Android优化————布局优化
绘画原理Android的绘制主要是借助cpu和gpu结合刷新机制共同完成的cpu:负责执行measure、layout等方法,计算显示内容gpu:负责栅格化(将UI元素绘制在屏幕上)绘制过程使用skia库(2D),硬件本质是采用openGL库进行绘制16ms内渲染一次,否则会掉帧布局加载原理Android中的布局加载入口为setContentView(),分析如下: @Override public void setContentView(@LayoutRes int layo原创 2021-06-10 14:38:41 · 492 阅读 · 1 评论 -
Android优化————启动优化
app启动过程点击图标启动LauncherApp通知AMS进行启动,LauncherActivity onPauseAMS新建app进程,创建ActivityThread,创建ApplicationThread通过ApplicationThread向AMS注册Binder执行Application的onCreate方法新建进入的Activity执行Activity的onCreate方法,进行UI绘制等操作启动分类冷启动:从点击应用图标到UI界面完全显示且用户可操作的全部过程。Cl原创 2021-06-10 14:38:07 · 133 阅读 · 1 评论 -
Android优化————包体积优化
优化好处包体积减小,易于升级多市场渠道有体积限制,避免二次处理apk安装时间减小运行时内存占用小磁盘空间占用小,odex二进制文件小。APK组成及分析APK组成assets: 开发目录下assets目录lib:所需要的so库META-INF:签名文件okhttp3:okhttp网络相关org:org相关信息res:布局信息,对应开发目录res下AndroidManifest:四大组件配置classes.dex:代码压缩文件apk分析使用常规apktool方法原创 2021-06-10 14:37:26 · 427 阅读 · 0 评论 -
Android优化———内存优化
Java虚拟机Java内存模型虚拟机栈(线程私有):局部变量表、操作数栈、动态链接、方法出口等信息堆(线程共享):实例对象方法区(线程共享):类信息,常量,即时编译器编译后的代码程序计数器(线程私有):字节码行号指示器,记录当前线程执行到多少行本地方法栈(线程私有):和虚拟机栈类似,两者的区别就是虚拟机栈是为虚拟机执行java方法服务,本地方法栈为虚拟机执行native方法服务 。程序计数器线程计数器中如果正在执行java方法,计数器记录的是当前指令的地址, 如果是Nat原创 2021-06-10 14:36:42 · 139 阅读 · 0 评论