
Android
文章平均质量分 79
TommyL1
这个作者很懒,什么都没留下…
展开
-
Okhttp基本使用及源码分析
该文章所用的okhttp源码版本:4.2.0基本使用Okhttp的使用步骤分为三步 :1.创建OkHttpClient,初始化一些连接参数。OkHttpClient client = new OkHttpClient();//如果需要添加拦截器,则需要用构建者模式OkHttpClient client = new OkHttpClient.Builder() .addInterc...原创 2019-11-18 18:34:15 · 324 阅读 · 0 评论 -
startService,bindService混合使用的生命周期问题
startService,bindService混合使用的生命周期问题startService与bindService的混合使用执行顺序无非就是4种情况,现有serviceA实例分别打印生命周期的各个方法,四种情况的生命周期如下:startService -> bindService->stopService -> unbindService 08-09 10:57:...原创 2018-08-09 13:10:22 · 1418 阅读 · 0 评论 -
Android View的事件传递及滑动冲突
事件传递顺序当用户点击屏幕产生一个事件,事件通过底层硬件捕获,然后交给ViewRootImpl处理,ViewRootImpl通过Window将事件交给Activity。 事件要传递给Activity那么它就必须持有Activity的引用,Window在Activity的attach方法中通过mWindow.setCallback(this)调用持有了Activity的引用,Activity实...原创 2018-08-30 11:58:48 · 1824 阅读 · 0 评论 -
Android App异常检测及处理
Android App常见的异常可分为三种:ANR,Crash及OOM。当异常发生时如何正确的获取日志定位问题非常重要。本文针对这三种异常分别给出了处理建议,并提供了一些日志收集框架及日志上传的思路。ANRANR(Application No Response),俗称应用卡顿。在Android中所有KeyEvent和TouchEvent都是按照先后顺序放入队列中,依次执行,并且只有当前一个事件...原创 2018-10-17 15:46:55 · 4140 阅读 · 0 评论 -
App优化建议
Android App性能优化可以从代码,图片,布局,耗电量,App瘦身等方面来分析入手。以下主要是总结了在这几方面编码的一些建议。代码1.避免内存泄漏Handler,Thread的生命周期与activity不一致静态变量持有Activity context的引用数据库流,网络流使用完后未关闭2.优化数据结构需要字符串拼接的操作时用StringBuffer(线程安全),StringB...原创 2018-10-23 17:32:45 · 1194 阅读 · 0 评论 -
主流热修复框架介绍
sdf方案对比Andfix阿里百川HotFixSophix微信Tinker饿了么Amigo美团Robust即时生效yesyes同时支持即时生效和冷启动修复nonoyes方法替换yesyesyesyesyesyesso替换nonoyesyesyesno资源替换nonoyesyesyesno四大组件...原创 2018-11-09 15:16:50 · 1021 阅读 · 0 评论 -
ARouter组件化框架原理分析
ARouter组件化框架原理分析欢迎使用Markdown编辑器编译阶段运行阶段新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出...原创 2019-01-11 11:29:08 · 3892 阅读 · 0 评论 -
Android组件化架构
Android组件化架构当APP规模达到一定时,利用组件化架构能够有效的简化APP的逻辑。按业务逻辑分组,各个团队只需关注于自己的模块实现,编译发布APP时再把各个模块集合在一起。组件化架构方式能让这一切变得简单而易于维护,特别适用于不同团队之间的协作开发。本文主要介绍组件化架构的代码组织方式。组件化架构需要各个组件不仅能够单独运行而且也能无缝的集成到主程序中,在这个过程中会遇到以下问题:1...原创 2019-01-15 15:25:45 · 412 阅读 · 0 评论 -
Android线程池及线程类概述
概要众所周知在Android中执行网络,IO等耗时任务时需要新开线程,和线程处理相关的类已经有Thread,AsyncTask,HandlerThread,IntentService等,那么我们为什么还需要线程池呢?当程序中有大量的网络请求时,就会频繁的创建和销毁线程,这时就会造成过大的性能开销,同时当大量线程一起工作的时候,也会导致相互抢占CPU资源的现象发生,严重时会发生线程阻塞等现象。因...原创 2019-04-10 17:22:52 · 516 阅读 · 0 评论