首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Android开发
订阅
皇城老叔
更多收藏集
微信扫码分享
微信
新浪微博
QQ
35篇文章 · 0订阅
Android 性能监控实现原理
android 性能监控,涉及概念:字节码,ASM 编程。
移动端性能监控方案Hertz
性能问题是造成App用户流失的罪魁祸首之一。App的性能问题包括崩溃、网络请求错误或超时、响应速度慢、列表滚动卡顿、流量大、耗电等等。而导致App性能低下的原因有很多,除去设备硬件和软件的外部因素,其中大部分是开发者错误地使用线程、锁、系统函数、编程范式、数据结构等导致的。即便…
开源 | 新一代Android 性能监控框架Rabbit
也提供了完整的数据上报系统。目前包含的主要功能如下图: 通过编译时代码插桩, rabbit可以非常方便的统计应用的冷启动时间与页面渲染时间。测速统计的关键时间点定义如下图: 与网络请求耗时结合后,rabbit可以统计出一个页面的完全渲染耗时。这里的完全渲染耗时是指:从页面cre…
Crash监控的简单实现方案
本文从Java层及Native展开,简单记录Android中的Crash监控方案。 Native层crash监控,可以采用Google的BreakPad开源框架。开源地址:https://github.com/google/breakpad BreakPad需要编译后才能使用。…
Android超长图加载与subsampling scale image view实现分析
Android中的图片加载一直是很重要的一块,也是很令人头疼的一块,动不动就出现OOM。所以我们有fresco等优秀的第三方框架,什么三级缓存,一行代码就帮我们轻松实现。但当面对超级长超级大分辨率尺寸的图时,就显得无能为力了,如果直接加载到内存中就又会出现OOM。 实现长图大图…
深入Android系统(二)Bionic库
咳咳,有木有发现这么多的了解字眼?因为从这几天本人大脑的表现来看,这种不常用的姿势大脑会习惯性的忘记,只能以了解来安慰自己了。。。。。 Bionic库到底是干啥用的呢?看下简介先。 其实当时已经有成熟开源的GNU Libc库了,不过GNU Libc库遵守的是GPL开源协议。GP…
你真的了解Android ViewGroup的draw和onDraw的调用时机吗
前几天遇到一个ViewGroup.onDraw不会调用的问题,在网上查了一些资料,发现基本都混淆了onDraw和draw的区别,趁着十一假期有时间,简单梳理了下这里的逻辑。 首先,View.draw和View.onDraw是两个不同的方法,只有View.draw被调用,View…
关于 AndroidStudio 你可能不知道的几个奇巧淫技
关于 AndroidStudio 你可能不知道的几个奇巧淫技
Android 事件分发机制源码解析-ViewGroup层
在上篇文章中我们分析了view的事件分发机制《Android 事件分发机制源码解析-view层》,在本篇文章中我们继续分析另一层viewGroup的事件分发,viewGroup本质上是一组view的集合,它的里面包含了view和另一组viewGroup,我们平常使用的各种布局如…