![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
性能优化
性能优化
HandKnock
读书-手敲-思考-总结-细节-深入-查漏补缺
展开
-
Crash治理
在集成了统计SDK(友盟统计,百度统计等)之后,有一个非常有利于测试的功能:错误分析自 定 义 一 个 Application , 比 如 叫 MyApplication 继 承 Application 实 现UncaughtExceptionHandler。覆写 UncaughtExceptionHandler 的 onCreate 和 uncaughtException 方法学习参考博客https://juejin.im/post/5b231fc451882574866d4519//美团cra原创 2020-11-16 17:19:53 · 167 阅读 · 0 评论 -
Profiler的使用
Profiler是一个分析app性能的强大工具合辑,可以分析内存、cpu、启动时间、网络情况、功耗等各个指标cpu使用率内存占用网络流量监控耗电量监控CPU Profiler 可以让我们查看应用进程中的每个线程,某段时间内执行了哪些函数,以及在其执行期间每个函数占用CPU的时间还可以使用函数跟踪来识别调用方和被调用方。 据此可以确定哪些函数负责调用常常会消耗大量特定资源的任务,并尝试优化应用代码以避免不必要的开支JVM CPU Profiler技术原理及源码深度解析https://www.c原创 2020-11-16 16:13:04 · 2510 阅读 · 0 评论 -
CPU使用率
利用Doraemonkit CPU检测功能,原理是分析/proc/stat/文件,文件记录的是系统进程整体的统计信息,得到CPU的使用率 CPU 使用率(以占总可用 CPU 时间的百分比表示)原创 2020-11-16 15:44:28 · 129 阅读 · 0 评论 -
安全优化
方案总结签名加固DEX文件保护通过使用DEX壳、JAVA代码反编译、JAVA指令虚拟化、JAVA字符常量加密等技术对DEX文件进行全面性保护。SO文件保护通过对SO文件进行反编译、防篡改、防盗用、虚机保护、代码压缩等技术对SO文件进行全面性保护。资源文件保护对应用中的资源文件以及JS文件进行加密保护和防篡改保护运行时保护对应用的运行环境进行实时检测,保护应用运行在安全的环境中。数据文件保护对应用使用到的本地文件、数据库、配置文件进行加密保护。代码混淆android平台的混淆原理是原创 2020-11-16 14:12:06 · 275 阅读 · 0 评论 -
滴滴开源APM-Dokit
功能模块一、平台工具(www.dokit.cn)【数据Mock】 App接口Mock解决方案,提供一套基于App网络拦截的接口Mock方案,无需修改代码即可完成对于接口数据的Mock。【健康体检】 一键式操作,整合DoKit多项工具,数据可视化,快速准确定位问题,让你对app的性能了如指掌。【文件同步助手】 通过终端服务,让你的终端空间在平台端完整的展现并提供强大的文件以及数据库操作能力。二、常用工具【App 信息查看】 快速查看手机信息,App 基础信息、签名相关、权限信息的渠道,避免去原创 2020-11-15 10:32:51 · 673 阅读 · 0 评论 -
腾讯开源APM-Matrix
Matrix 有哪些功能?Matrix 当前监控范围包括:应用安装包大小,SQLite 操作优化,帧率变化,卡顿,启动耗时,页面切换耗时,慢方法,文件读写性能,I/O 句柄泄漏, 内存泄漏等。APK CheckerAPK Checker 是针对 Android 安装包的分析检测工具,根据一系列设定好的规则检测 APK 是否存在特定的问题,并输出较为详细的检测结果报告,用于分析排查问题以及版本追踪。当前,APK Checker 主要包含以下功能:读取 manifest 的信息按文件大小排序列出 A原创 2020-11-15 10:19:24 · 919 阅读 · 0 评论 -
apk瘦身
删除无用资源冗余,废弃代码和图片代码混淆https://blog.csdn.net/sslinp/article/details/83412395//混淆https://juejin.im/post/5947e7e8128fe1006a52d922混淆https://www.jianshu.com/p/6c41e845ecbe高级用法-repackageclasses 将所有类文件全部归纳到同一个包名下,可以有效避免通过包名去反向检索代码-obfuscationdictionary 指定混原创 2020-10-30 13:58:40 · 88 阅读 · 0 评论 -
内存泄漏
经典的8种内存泄露场景https://juejin.im/post/5a090bff6fb9a04525779bb5单例造成的内存泄漏非静态内部类创建静态实例造成的内存泄:Handler,new Thread资源未关闭造成的内存泄漏:注册和解注册,cursor关闭,网络,文件流关闭集合类泄露,集合元素是对象,持有引用1、应用了context2、内部类,匿名类(handler)3、注册和解注册、监听和解监听,动画的关闭setOnClickListener不会内存泄漏,被view持有,ac原创 2020-10-30 13:56:54 · 378 阅读 · 0 评论 -
启动优化
冷启动热启动App进程处于后台,系统只是将其从后台带到前台,展示给用户。屏幕会显示一个空白的窗口,直至activity渲染完毕温启动介于冷启动和热启动之间用户back退出了app,然后又启动,app进程可能还在运行,但是activity需要重建用户退出app后,系统可能由于内存原因将app杀死,进程和activity都要重启,但是可以在onCreate中将被动杀死锁保存的状态(savedInstance state)恢复我们只需要对第一种状态做优化,优化2个环节,application.onC原创 2020-10-30 13:55:46 · 448 阅读 · 0 评论 -
题目-性能优化
思考在结合的业务的情况下,我可以再做一点什么?对于已经写完的代码,我还可以做哪一些优化?如何对Android 应用进行性能分析以及优化?哆啦A梦 滴滴开源的性能监控工具内存泄漏帧率/卡顿cpu启动耗时Java多线程引发的性能问题,怎么解决?线程池启动页白屏及黑屏解决?闪屏页启动太慢怎么解决?异步加载、预加载、延迟加载怎么保证应用启动不卡顿?尽量优化,和业务复杂度有关系App启动崩溃异常捕捉自定义View注意事项现在下载速度很慢,试从网络协议的角度分析原因,并优化原创 2020-10-30 10:19:32 · 218 阅读 · 0 评论 -
帧率卡顿ANR
UI卡顿优化方案:复杂数据处理放子线程,UI刷新放主线程降低UI层级,减少不必要的层级,去除不必要的背景色,使用include,merge,ViewStub标签,多使用relativelayout、ConstraintLayout绘制优化,不要在onDraw执行大量操作,或者创建对象内存抖动的问题,fragment回收,大图等,减少requestlayout次数ANRANR发生5秒内无法响应屏幕触摸事件或键盘输出广播onReceive()函数时10秒没有处理完成,后台为20秒前台服务原创 2020-10-30 10:18:17 · 219 阅读 · 0 评论