1.使用了AutoService,autoService使用了代理模式,autoService会在各个是具体实现的接口接口模块下生成一个这个文件,完成装在,模块注入 2.Ro...
1.使用了AutoService,autoService使用了代理模式,autoService会在各个是具体实现的接口接口模块下生成一个这个文件,完成装在,模块注入 2.Ro...
Recycler 中ArrayList<ViewHolder> mAttachedScrap 是缓存RecycleView做动画时,被detach的viewHolder, A...
1.继承ViewGroup 2.在onMeasure时,先测量子View,再测量自己,保存自己的所有的View和高度 使用measureChild(child,widthMe...
一、 特点 基于AppCompatImageView扩展 支持圆角、圆形显示 可绘制边框,圆形时可绘制内外两层边框 支持边框不覆盖图片 可绘制遮罩 ...... 二、基本原理...
1.多线程的目的:充分利用cpu资源,并发做多件事 2.线程什么时候让出cpu: 阻塞时 wait,await等待IO sleep yield 3.线程是什么: 一条代码执行...
1.looper本身不会导致应用卡死,在onCreate,onResume,onStart等操作时间时间过长,会导致掉帧,甚至发生anr android就是在Looper的l...
1.创建一些文件夹并挂载设备 2.初始化和启动属性服务 3.解析init.rc配置文件并启动zygote进程 1.binder是一个本地的c/s结构 IBinder通过内存映...
在serviceMethod这个方法中:是对http请求参数的拼接 在build方法中: int parameterCount =parameterAnnotationsAr...
android每次启动过程中都是通过jvm来加载dex文件的 dex文件的又来java---class---dex 热修复就是每次在app启动时,加载我们自己的patch.d...
There's no router matched! 组件化开发过程中,我在宿主App模块引用模块C中的Activity,一直不能成功,界面及日志提示"W/ARouter::...
XBaseAndroid 项目地址:https://github.com/fanhua1994/XBaseAndroid演示地址:https://github.com/fan...
synchronized修饰非静态方法,同步代码快的synchronized (this)用法和synchronized (非this)的用法锁的是对象,线程想要执行对应同步...
Arouter框架适合项目比较大,模块多的时候,可以实现解耦,不需要知道跳转的是哪个activity,只需要知道配置参数就行 1.ARouter通过解析URL实现路由跳转 2...
通过一张图来描述activity加载布局的过程 1.activity中的setConentView 通过getWindow().setContentView(layoutRe...
android内容优化之道 1.共享内存 android尝试跨进程共享ram页,分配和回收内存 每个进程都被限制到一个单一的虚拟内存范围内 Dalvik堆不会压缩堆的逻辑空间...
绑定手机号/微信/微博/QQ等帐号的时候,如果提示被占用该怎么办? 当你遇到上述情况,说明你想绑定的帐号,已经绑定在别的简书帐号上面了,此时你可以通过以下步骤取回你另外的简书...
以下文章作者:goeasyway Android面试一天一题(1 Day) Android面试一天一题(2 Day) Android面试一天一题(3 Day) Android...
作者:crazysunj,链接:http://crazysunj.com/,本文为作者投稿。 推送过几篇类似的文章,不过作者写得还是非常的通俗易懂,就继续推送啦。 最近看到越...