1. Android 开发者峰会一些资源
大家可以在 B 站看到所有的内容:
https://space.bilibili.com/64169458/channel/detail?cid=91608
有个值得关注的是,官方回复了一些 Android 开发的问题:
一些新技术都有涉及,比如 ViewPager2 正式发布,关于 Camerax,Camera2,Camera1 之间如何选择,以及Kotlin,Jetpack Compose 相关问题。
我当时比较好奇的一个问题是这个:
挺奇怪的,难道官方 app 会考虑只用一个 Activity 么?
详细的大家直接看这里:
Android 开发者峰会 2019 常见问题解答
2. 百度对外开源文章详情页 webview+recyclerview+一些原生控件联动效果
https://github.com/baiduapp-tec/ELinkageScroll
如果大家每篇推文都看的话,这个库我上次已经专门介绍过啦。
这个效果使用非常广,基本所有的资讯类 app 都有,感谢百度开源。
历史类似文章:
大厂的文章详情页 WebView与 RecyclerView如何连贯滑动的?
另外感谢「this 蜗牛」这位朋友留言说道 QMUI也有这个效果,还后台给我发了个截图,我也给大家补充上,大家可以一起参考。
https://github.com/Tencent/QMUI_Android
之前的系列我也给大家推荐过 QMUI,这样的大厂出的类库还是可以关注下,尤其针对个人开发者,在快速迭代自己项目的时候还是很有用的。
3. 大厂对外文章分享
百度 App 技术
一种简单优雅的TextView行间距适配方案
以前用 TextView就怕UI 跟我们纠结行高,因为在 Android 里面没有一个非常明确的 lineHeight 概念,百度这边分享了自己的解决方案,还是学到了一些新知识的,文章中提到的LineHeightSpan我之前就不知道,还是学到了。
方案对于中文的支持还是很不错的,值得借鉴。
Android 10分区存储介绍及百度APP适配实践
这个就不用介绍了吧,标题很清晰。
字节跳动技术团队
抖音BoostMultiDex优化实践:Android低版本上APP首次启动时间减少80%
抖音BoostMultiDex优化实践:Android低版本上APP首次启动时间减少80%(二)
介绍了抖音团队自研的一个针对 4.x 级以下机型对于 MultiDex 的优化。
目前还没有开源,大家可以了解下原理,后续开源我也会周知大家的。
此外相关知识也可以学习下:
Android 一种在Dalvik虚拟机上多Dex加载优化的方案
https://blog.csdn.net/sbsujjbcy/article/details/53381663
Google 开发者
Room 中的数据库关系
对于 Room 使用者,如果你对 1 对 1,1 对N,N 对 N 不知道如何处理的可以学习下。
历史分享(点击可直接访问):
- 腾讯Bugly:对字符串匹配算法的一点理解
- 爱奇艺:安卓APP崩溃捕获方案——xCrash
- 字节跳动:深入理解Gradle框架之一:Plugin, Extension, buildSrc
- 百度APP技术:Android H5首屏优化实践
- 京东技术:任意URL跳转漏洞修复与JDK中getHost()方法之间的坑
- 支付宝客户端架构解析:Android 客户端启动速度优化之「垃圾回收」
- 支付宝 App 构建优化解析:通过安装包重排布优化 Android 端启动性能
- 支付宝 App 构建优化解析:Android 包大小极致压缩
- 搜狐:深入理解Flutter多线程
- 携程:从智行 Android 项目看组件化架构实践
- Google: Flutter 您需要知道的知识点 | FAQ・第三期
- 字节跳动:二维码扫描优化
- 网易传媒技术团队:AOP技术在客户端的应用与实践
- 网易大数据|互联网产品决策秘笈: AB测试
- 高德:Android Native 内存泄漏系统化解决方案
- 例说 Constraint Layout(三)—— 性能测试
- Android P之Smart Linkify
- 百度App组件化之路
- 百度App网络深度优化系列《三》弱网优化
- 头条 | 深入理解gradle框架之二:依赖实现分析
- 美团| Probe:Android线上OOM问题定位组件
- 美团|Android静态代码扫描效率优化与实践
- 头条| 开源 | Scene:Android 开源页面导航和组合框架
- 网易新闻客户端 H5 秒开优化
- 解决支付宝包体积优化的遗留问题:运行时获取dexpc
- Android篇 | 爱奇艺App启动优化实践分享
- 二维码扫描优化及爱奇艺App的实践
- 腾讯 Bugly:动态下发 so 库在 Android APK 安装包瘦身方面的应用
- 天猫精灵:史上最全Android渲染机制讲解(长文源码深度剖析)
- 花椒Android端自动化测试实践
4. Github 找 Android 项目姿势
上次有同学留言问我怎么在 Github 找 Android项目,大家能想到的肯定是看 trending:
https://github.com/trending/java
不过现在能上 trending 的 Android 项目太少了,毕竟和 Java 项目在一个分类。
其实 Github 有主题的概念,直接选择 Android 主题就可以了:
https://github.com/topics/android
可以看到有9W+项目。
也可以按条件筛选:
5. 一些Android 逆向*攻防*相关的话题
有这么一个仓库:
https://github.com/Hack-with-Github/Awesome-Hacking
看名字大家就知道介绍啥了,是一个安全相关的仓库汇总,里面包含了太多的子项目,例如有些工具不知道在哪下载,在这里面很好找:
https://github.com/carpedm20/awesome-hacking
6. 播报一些最近发现更新的开源库
LeakCanary 不再使用 haha
我们熟悉的 LeakCanary 已经不再使用之前的 haha 做内存分析,换成了自研的 Shark。
https://square.github.io/leakcanary/shark/
RxJava 已经更新了 3.0.0 版本
https://github.com/ReactiveX/RxJava
不过 Retrofit2 暂时还无法使用 RxJava3,因为相关 Adapter 库还未适配 RxJava3。
好了,祝大家元气满满!