📄🦌🙌🐟🏖️
ccc2
探 索 星 辰 大 海
精选文章
按住 Shift 横向滚动
Android 的 AudioManager 音频焦点竞争,多应用同时播放的处理

Android 的 AudioManager 音频焦点竞争,多应用同时播放的处理

Android 的 AudioManager 音频焦点竞争,多应用同时播放的处理 「Android 的 AudioManager 音频焦点竞争,多应用同时播放的处理」 开车导航时最怕什么?不是路线绕远,是扬声器里的混战。高德地图刚喊完“前方三百米掉头”,抖音突然开始“注意看这个男人叫小帅”,你手忙脚

国内手机厂商的 AI 大模型集成,对 App 开发者意味着什么

国内手机厂商的 AI 大模型集成,对 App 开发者意味着什么

国内手机厂商的 AI 大模型集成,对 App 开发者意味着什么 国内手机厂商的 AI 大模型集成,对 App 开发者意味着什么 去年年底,我手头一个阅读类 App 收到小米应用商店的审核意见,要求「适配系统级 AI 摘要能力」。当时我还以为是常规的合规审查,点进去一看才发现,对方要求我们在应用内提供

MediaStore 的日期查询索引,为什么有时候会慢

MediaStore 的日期查询索引,为什么有时候会慢

MediaStore 的日期查询索引,为什么有时候会慢 MediaStore 的日期查询索引,为什么有时候会慢 一个线上卡顿 case 上个月排查了一个相册模块的冷启动卡顿问题。Systrace 抓下来,主线程在 ContentResolver.query 上硬耗了 1.8 秒,直接导致首页 Rec

我自己搭的 CI/CD 流水线,花了多少钱

我自己搭的 CI/CD 流水线,花了多少钱

我自己搭的 CI/CD 流水线,花了多少钱 我自己搭的 CI/CD 流水线,花了多少钱 Android 项目的构建成本是个容易被低估的坑。本地开发时,我们往往只关心 Gradle Sync 那几十秒能不能再快一点,却忽略了把这套构建流程搬到云端后,按分钟计费的账单会累积成什么规模。去年我把手上一個包

Gradle 依赖版本统一管理方案对比

Gradle 依赖版本统一管理方案对比

Gradle 依赖版本统一管理方案对比 Gradle 依赖版本统一管理方案对比 去年把项目从 Groovy 的 ext 块迁移到 buildSrc 之后,我们的 CI 构建时间从平均 14 分钟涨到了 38 分钟。排查了整整两天,最后发现症结在于 buildSrc 目录里的一行注释改动——仅仅是加了

StrictMode 检测主线程 IO,生产环境敢开吗

StrictMode 检测主线程 IO,生产环境敢开吗

StrictMode 检测主线程 IO,生产环境敢开吗 StrictMode 检测主线程 IO,生产环境敢开吗 去年在做启动性能优化的时候,通过 Systrace 发现主线程在 Application.onCreate 里有一小段可疑阻塞。跟进去看,是一个第三方 SDK 在初始化时读了 assets

Google 的官方 Codelab 合集,哪些值得刷

Google 的官方 Codelab 合集,哪些值得刷

Google 的官方 Codelab 合集,哪些值得刷 Google 的官方 Codelab 合集,哪些值得刷 Google 的 Codelab 体系有一个挺有意思的矛盾:它可能是 Android 官方生态里最成体系的学习路径,但刷完十来个课程之后,你依然有很大概率在面对真实项目时不知所措。不是因为

Gradle 构建慢的问题,有人找到了新解法

Gradle 构建慢的问题,有人找到了新解法

Gradle 构建慢的问题,有人找到了新解法 Gradle构建慢的问题,有人找到了新解法 如果你最近还在一个超过两百个模块的Android项目里写代码,大概率会对那个绿色的Gradle进度条产生生理性厌恶。点一下Run,先去接杯水,回来发现它还在Configuration阶段打转;改了一行日志,重新

Genymotion 桌面模拟器的现在和替代方案

Genymotion 桌面模拟器的现在和替代方案

Genymotion 桌面模拟器的现在和替代方案 Genymotion 桌面模拟器的现在和替代方案 如果你最近还在用 Genymotion Desktop 跑 Android 14 的兼容性测试,大概会注意到启动耗时已经远不如三四年前的印象中那样轻快。那个曾经在 Stack Overflow 上被高

Rust 写 Android 系统服务,Google 的新尝试

Rust 写 Android 系统服务,Google 的新尝试

Rust 写 Android 系统服务,Google 的新尝试 Rust 写 Android 系统服务,Google 的新尝试 如果你最近同步过 AOSP master 分支的代码,点开 system/security/keystore2 或者 packages/modules/DnsResolve