Android Weekly 是之前每周都会做的,是把当周内更新或者在解决问题的时候搜到的优秀文章收集起来,最初只是自己的一个收藏,后来有小伙伴说不如分享出来,于是就在知乎搞了个专栏,每周在更新。结果由于你懂得的原因断更了半年,最新的就到现在了..
刚好是周末,大家可以在清单里面选择自己感兴趣的阅读。我只是大自然的搬运工,这里非常感谢这么多作者提供了这么多优秀的文章,分享了经验和最新的技术给大家,非常感谢!
Android Lint API Guide http://googlesamples.github.io/android-custom-lint-rules/api-guide.html
重学安卓:唯一可信源 读写分离设计 独家解析 https://xiaozhuanlan.com/topic/2049857631
重学安卓:吃透 LiveData 本质,享用可靠的消息鉴权机制 https://xiaozhuanlan.com/topic/6017825943
Jetpack MVVM Scaffold https://github.com/KunMinX/Jetpack-MVVM-Scaffold
Dev on Windows with WSL https://dowww.spencerwoo.com/
Android ANR 问题总结 https://mp.weixin.qq.com/s/-yfJoRxHe_J3PNLkGw19Cg
西瓜卡顿 & ANR 优化治理及监控体系建设 https://mp.weixin.qq.com/s/2sjG5qkrUNQsI0jEsnh4kQ
今日头条 ANR 优化实践系列 - 设计原理及影响因素 https://mp.weixin.qq.com/s/ApNSEWxQdM19QoCNijagtg
今日头条 ANR 优化实践系列 - 监控工具与分析思路 https://mp.weixin.qq.com/s/_Z6GdGRVWq-_JXf5Fs6fsw
今日头条 ANR 优化实践系列分享 - 实例剖析集锦 https://mp.weixin.qq.com/s/4-_SnG4dfjMnkrb3rhgUag
今日头条 ANR 优化实践系列 - 告别 SharedPreference 等待 https://mp.weixin.qq.com/s/kfF83UmsGM5w43rDCH544g
今日头条 ANR 优化实践系列 - Barrier 导致主线程假死 https://mp.weixin.qq.com/s/OBYWrUBkWwV8o6ChSVaCvw
Performance: Capturing Profiler traces - MAD Skills https://www.youtube.com/watch?v=QxKerZ8y1S4
Android: Bluetooth as a Service https://proandroiddev.com/android-bluetooth-as-a-service-c39c3d732e56
Kotlinx Json vs Gson https://medium.com/@jurajkunier/kotlinx-json-vs-gson-4ba24a21bd73
Enabling cache & offline support on Android using Room https://proandroiddev.com/enabling-cache-offline-support-on-android-using-room-4b82ae0c9c88
MVVM with Clean Architecture - Develop Better Android Apps https://premsinghsodha7.medium.com/mvvm-with-clean-architecture-develop-better-android-apps-a6661b9a5079
App Startup [All official development resources] https://medium.com/android-topics/app-startup-all-official-development-resources-2306c4110c6a
How to correctly measure the App Startup time on Android https://medium.com/dipien/how-to-correctly-measure-the-app-startup-time-on-android-36eea148653c
Performance and Velocity: How Duolingo Adopted MVVM on Android https://android-developers.googleblog.com/2021/08/android-app-excellence-duolingo.html
Android - ASM 插桩你所需要知道的基础 https://juejin.cn/post/7000572440988352549
微信 Android 客户端的 ANR 监控方案 https://mp.weixin.qq.com/s/fWoXprt2TFL1tTapt7esYg
Measuring Render Performance with Jetpack Compose https://engineering.premise.com/measuring-render-performance-with-jetpack-compose-c0bf5814933
字节跳动开源 Android PLT hook 方案 bhook https://mp.weixin.qq.com/s/9-fmlN8_bQYjN5sRzL4fTg
西瓜视频稳定性治理体系建设一:Tailor 原理及实践 https://mp.weixin.qq.com/s/DWOQ9MSTkKSCBFQjPswPIQ
西瓜视频稳定性治理体系建设二:Raphael 原理及实践 https://mp.weixin.qq.com/s/RF3m9_v5bYTYbwY-d1RloQ
西瓜视频稳定性治理体系建设三:Sliver 原理及实践 https://mp.weixin.qq.com/s/LW3eMK9O2tfFtZcu5eqitg
Systrace 流畅性实战 1 :了解卡顿原理 https://www.androidperformance.com/2021/04/24/android-systrace-smooth-in-action-1/
Systrace 流畅性实战 2 :案例分析 - MIUI 桌面滑动卡顿分析 https://www.androidperformance.com/2021/04/24/android-systrace-smooth-in-action-2/
Systrace 流畅性实战 3 :卡顿分析过程中的一些疑问 https://www.androidperformance.com/2021/04/24/android-systrace-smooth-in-action-3/
Android GC 简史 https://juejin.cn/post/6966205309782065159
Kernel | Log 中的速率限制 https://juejin.cn/post/6971843598778269710
ART 虚拟机 | Android 应用中 SIGSEGV 信号的处理流程 https://juejin.cn/post/6966169836703449119
ART 虚拟机 | 锁 https://juejin.cn/post/6956213033806872606
ART 虚拟机 | JNI 静态注册和动态注册 https://juejin.cn/post/6955322183895908366
ART 虚拟机 | Java 对象和类的内存结构 https://juejin.cn/post/6950920684768296996
介绍一种性能较好的 Android native unwind 技术 https://mp.weixin.qq.com/s/g4RWAS3vNjFu2IoU9OxRaQ
快速缓解 32 位 Android 环境下虚拟内存地址空间不足的 “黑科技” https://mp.weixin.qq.com/s/ZbFQQ5AVsHy0YL_kKMAiYA
线程:“你可能把握不住”—— Android 平台下线程导致的内存问题 https://mp.weixin.qq.com/s/tEhMs2xa05E8aAvynXMpSw
Android 的离奇陷阱 — 设置线程优先级导致的微信卡顿惨案 https://mp.weixin.qq.com/s/oLz_F7zhUN6-b-KaI8CMRw
微信 Android 客户端的卡顿监控方案 https://mp.weixin.qq.com/s/3dubi2GVW_rVFZZztCpsKg
我的手机灭屏了,为什么还在耗电 https://mp.weixin.qq.com/s/ntUsy8cgYTfriK3ICun0Jg
CPUFreq 简介 https://mp.weixin.qq.com/s/Fp1QWoXlMbl7Bf5oJ1cBJw
随心所动,厂商的 CPU 核管理策略介绍https://mp.weixin.qq.com/s/9AaFOTeVrMBZoaVd2kb7lg
cpufreq schedutil 原理剖析 https://mp.weixin.qq.com/s/YO302bcHyxmVNMYYhRGEFQ
浅析丢帧检测机制上篇 https://mp.weixin.qq.com/s/jlCP-aRkUKfESjktgPmG6w
Android 电源键亮灭屏流程 https://mp.weixin.qq.com/s/_yY5QejF1Ds17DPStfJoqQ
Android 图形渲染原理(上)https://mp.weixin.qq.com/s/5MWP7ce8GS35Uu8zDs0yIw
Android 图形渲染原理(中)https://mp.weixin.qq.com/s/QoLbFu15onM0ksXK9wh5Kw
掌握 Android 图像显示原理(下)https://mp.weixin.qq.com/s/pvGBrWe3-1uq0gEZUM6ZvA
全民 K 歌内存篇 1——线上监控与综合治理 https://mp.weixin.qq.com/s/KWaueLMZwwLSjGGJya6qFA
全民 K 歌内存篇 2——虚拟内存浅析 https://mp.weixin.qq.com/s/pbLLLCXlkz6gp9ps65rMYA
全民 K 歌内存篇 3——native 内存分析与监控 https://mp.weixin.qq.com/s/0cF5Q6_LXrkLAdjkXIwrVQ
MOO 音乐的 Flutter 实战总结之内存治理(上)https://mp.weixin.qq.com/s/v4Cdheo-ZBHGuAQd12XEMA
MOO 音乐的 Flutter 实战总结之内存治理(中)https://mp.weixin.qq.com/s/njtOELCVZQpo9e29H9ykjA
MOO 音乐的 Flutter 实战总结之内存治理(下)https://mp.weixin.qq.com/s/qxHip7Y50yPcqui6dudK2g
抖音 Android 无障碍开发知识总结 https://mp.weixin.qq.com/s/2JBMfaV4oa0XLrJ-55sPdg
Android Navigation 遇坑记 - 真实项目经历 https://mp.weixin.qq.com/s/XdPYjC_6NP-0rmp8Y3hNpg
如何利用 ftrace 精确跟踪特定进程调度信息 https://mp.weixin.qq.com/s/JDQA4W_Ylutp03NvShceDw
移动端耗时类指标检测:基于图像匹配和 OCR 检测的智能分帧算法 https://mp.weixin.qq.com/s/NvNOPdhKb1ywZSN-_zbyUg
图像异常质量检测 https://mp.weixin.qq.com/s/Jn7V7cnP_rYfnBPotnx1Bg
Android 调用链——自动化精准测试 https://mp.weixin.qq.com/s/imGRu0fNRmAk2ssg0MDqEA
Fastbot:行进中的智能 Monkey https://mp.weixin.qq.com/s/IE2YHl7B2gE8_Py_N52tSQ
Android App 电量统计原理与优化 https://mp.weixin.qq.com/s/9Pi-rHj-G2omqu3dCtuuZA
debug:am trace-ipc源码分析 https://www.cnblogs.com/houser0323/p/15069884.html
Memory Leaks with Fragments in Android https://maxkohne.medium.com/memory-leaks-with-fragments-in-android-6664d1fd8e73
Kotlin Jetpack 实战:图解协程原理 | 开发者说・DTalk https://mp.weixin.qq.com/s/qXjUFWTiUoLs9TON-SJD7w
「性能优化系列」APP 启动优化理论与实践(上)https://juejin.cn/post/6844904131816079367
「性能优化系列」APP 启动优化理论与实践(下)https://juejin.cn/post/6997253505723432974
关于 Handler 同步屏障你可能不知道的问题 https://juejin.cn/post/6940607471153053704
深入理解 RecyclerView 的绘制流程和滑动原理(匠心巨作 - 上)https://juejin.cn/post/6980712937581346847
深入理解 RecyclerView 的回收复用缓存机制详解(匠心巨作 - 下)https://juejin.cn/post/6984974879296585764
一次生产环境 NPE 崩溃的排查记录 https://juejin.cn/post/6976566366211948581
卡顿、ANR、死锁,线上如何监控?https://juejin.cn/post/6973564044351373326
C++ 异常机制的实现方式和开销分析 http://baiy.cn/doc/cpp/inside_exception.htm
深入浅出协程、线程和并发问题 https://mp.weixin.qq.com/s/roK1vW9yCqDe12kgs7kaUA
干货:ANR日志分析全面解析 https://mp.weixin.qq.com/s/TDtjQdOktLcUYec3ldhh5g
补齐 Android 技能树 - 从害怕到玩转 Android 代码混淆 https://juejin.cn/post/6966526844552085512
入木三分:从设计者角度看 Retrofit 原理 https://juejin.cn/post/6963202606676049957
通俗易懂 Android 视图系统的设计与实现 https://juejin.cn/post/6974696075038982152
循序渐进 帮你看穿线程安全问题 https://juejin.cn/post/6977173836584353822
引入 Jetpack 架构后,你的 App 会发生哪些变化? https://juejin.cn/post/6955491901265051661
关于 Android 架构,你是否还在生搬硬套?https://juejin.cn/post/6942464122273398820
dirty writeback 机制的优化与演进 https://mp.weixin.qq.com/s/84NgBhB7a8e4p6pbm4jJBQ
Linux 内存回收之 drop cache https://mp.weixin.qq.com/s/xuipSjzrixarN_OS6CFENA
Linux 中 "available" 内存的计算 https://mp.weixin.qq.com/s/s94dVWeWha_KYbfPgmRRBg
Android 应用启动性能 | 延迟初始化 https://mp.weixin.qq.com/s/HE4_Zi9Ee8CkXivEKeGyxw
应用启动性能 | 介绍 App Startup 库 https://mp.weixin.qq.com/s/pW8CHEG3nr2kL4uEqc_dig
高效 Android 非托管内存分析解决方案 | 开发者说・DTalk https://mp.weixin.qq.com/s/YceurxZiLjlVQn54nceAbg
或许是迄今为止第一篇讲解 fps 计算原理的文章吧 https://juejin.cn/post/6844904182898524168
如何通过 Systrace 查看 GPU 渲染花费的时间 https://juejin.cn/post/6879740386198323207
深入 Android 系统(十二)Android 图形显示系统 - 1 - 显示原理与 Surface https://juejin.cn/post/6944960866404007944
深入 Android 系统(十二)Android 图形显示系统 - 2-SurfaceFlinger 与图像输出 https://juejin.cn/post/6958064165458018317
工具介绍 | ASAN 和 HWASAN 原理解析 https://juejin.cn/post/6844904111570157575
Android Framework | 消息机制的冷门知识点 https://juejin.cn/post/6844904102963445767
谈谈 Android 渲染机制:如何绘制并显示一帧图像?https://zhuanlan.zhihu.com/p/351743856
安卓手机内存优化调研 https://blog.csdn.net/buhui912/article/details/113404755
我所理解的 Handler 消息机制 https://juejin.cn/post/6950996994114617352
应用性能优化之 VerifyClass https://juejin.cn/post/6951225539990388750
轻量级 APP 启动信息构建方案 https://juejin.cn/post/6992744674796503077
测试应用启动性能 https://mp.weixin.qq.com/s/ohKG7i5ttLh5hNH7fuKiUw
InputChannel and InputDispatcher in Android https://xianzhu21.space/developer/inputchannel_inputdispatcher/
Android 正确的保活方案,不要掉进保活需求死循环陷阱 https://juejin.cn/post/7003992225575075876
Google 官方出的 Performance 相关的系列视频
https://www.youtube.com/playlist?list=PLWz5rJ2EKKc-xjSI-rWn9SViXivBhQUnp
What’s new in Flutter 2.5 https://medium.com/flutter/whats-new-in-flutter-2-5-6f080c3f3dc
Android Weekly https://androidweekly.net/issues/issue-482
Measuring-render-performance-with-jetpack-compose https://engineering.premise.com/measuring-render-performance-with-jetpack-compose-c0bf5814933
Performance and Velocity: How Duolingo Adopted MVVM on Android https://android-developers.googleblog.com/2021/08/android-app-excellence-duolingo.html
How to correctly measure the App Startup time on Android https://medium.com/dipien/how-to-correctly-measure-the-app-startup-time-on-android-36eea148653c
App Startup [All official development resources] https://medium.com/android-topics/app-startup-all-official-development-resources-2306c4110c6a
MVVM with Clean Architecture - Develop Better Android Apps https://premsinghsodha7.medium.com/mvvm-with-clean-architecture-develop-better-android-apps-a6661b9a5079
Enabling cache & offline support on Android using Room https://proandroiddev.com/enabling-cache-offline-support-on-android-using-room-4b82ae0c9c88
Kotlinx Json vs Gson https://medium.com/@jurajkunier/kotlinx-json-vs-gson-4ba24a21bd73
Square sees increase productivity with Compose https://developer.android.google.cn/stories/apps/square-compose
想看之前的 Android Weekly 的内容,可以移步知乎专栏:https://www.zhihu.com/column/c_1278963991947780096
欢迎大家点赞、收藏、转发、打赏 ..