首页
首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
joychic
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
2
文章 2
沸点 0
赞
2
返回
|
搜索文章
最新
热门
Android App Trace 演进之路
TraceView TraceView 是早期 Android SDK 中内置的一个工具,它可以加载 trace 文件,用图形的形式展示代码的执行时间、次数及调用栈,便于我们分析。底层实现是基于ART
一次红米Note 12 诡异的crash排查记录
起因是社区业务反馈 546 的包在他的测试机上没多久就崩了,困扰很久了,crash backtrace就一行,完全看不出任何问题。 从stack快照大概猜测到与播放器相关,但是播放器so在545到54
一次ART内联优化导致的APK玩崩
背景 在包体积优化中有一项就是开启 proguard 配置的 optimizations 选项,optimizations 开启后其中有一项优化 pass 就是在 R8 过程中对方法进行内联。 其中方
从dex和class文件结构看包体积优化
Class 文件格式简介 class文件是一种8位字节的二进制流文件,当遇到需要占用8个字节以上空间的数据项时会按照高位在前(最高位字节在地址最低位,最低位字节在地址最高位)的方式分割成若干个8字节存
理解包安装中的OAT流程
在 APK 中,Java 和 Kotlin 代码被编译为 dex 字节码,但由于存储和加载完全编译的App的成本,并未完全编译为机器码。 应用程序中经常使用的类和方法,以及用于应用程序启动的类和方法,
ART 虚拟机的解释执行
Art 虚拟机是如何执行java指令的?严格来说, Art 虚拟机所执行的应该是dex 指令或对应的机器码,我们暂且将这些指令统称为java指令。 笼统而言, ART 虚拟机执行java指令的有两种方
AndroidX Test with Robolectric
Robolectric 的本质是在 Java 运行环境下,采用 Shadow 的方式对 Android 中的组件进行模拟测试,从而实现Android 单元测试。对于一些 Robolectirc 暂不支持的组件,可以采用自定义 Shadow 的方式扩展 Robolectric 的…
jetpack系列———Lifecycle
LifecycleOwner 接口定义说明了某种东西是具有生命周期的。通过getLifecycle()可以返回这个生命周期 LifecycleObserver 是用来观察生命周期的,它是一个空接口,我们需要自定义一个类来实现 LifecycleObserver 接口。 在上面的…
jetpack系列——ViewModel
ViewModelProvider 的构造函数给 mFactory 和 mViewModelStore 进行了赋值,如果使用只含有一个参数的构造函数,并且这个 ViewModelStoreOwner 类型是 HasDefaultViewModelProviderFactory …
Android中的事件分发机制
Android 是基于“事件驱动”模型的。所谓事件驱动,简单地说就是你点什么按钮(即产生什么事件),系统执行什么操作(即调用什么函数)。当然事件不仅限于用户的操作,事件驱动的核心自然是事件。 从事件角度说,事件驱动程序的基本结构是由一个事件收集器、一个事件发送器和一个事件处理器…
下一页
个人成就
文章被点赞
119
文章被阅读
33,639
掘力值
878
关注了
55
关注者
71
收藏集
1
关注标签
15
加入于
2017-09-21