暂无搜索历史
在 Android 本地数据持久化方案中,Room 已经成为事实标准。但很多团队在实际项目中遇到的痛点,往往不是"怎么用 Room",而是"数据库升级了怎么办"...
摘要:Android 权限处理真正难的地方,不是调用一次授权 API,而是同时面对系统版本差异、用户拒绝、永久拒绝、设置页返回和业务降级。本文以拍照和选择图片为...
在 HarmonyOS 应用中,relationalStore 适合承载结构化业务数据,但真正进入生产环境后,难点通常不在于创建一张表,而在于如何保证批量写入的...
当页面同时包含筛选、分页、刷新和错误恢复时,单纯增加 ViewModel 字段往往会让状态彼此打架。本文用一个列表页面说明何时需要从 MVVM 的多状态更新迁移...
Android 应用一旦发布,就运行在用户真实设备上,面临的风险远比服务端复杂:安装包可以被反编译,本地数据可以被有 root 权限的人读取,网络请求可以被中间...
性能优化里有两条线:一条是内存抖动导致的卡顿,一条是过度绘制引发的掉帧。前者让用户在列表滑动时感到滑雪场,后者让动画看起来像PPT。
线上 ANR 率突然从 0.03% 涨到 0.4%,监控平台一堆 "Input dispatching timed out",但堆栈五花八门,主线程有时停在 n...
在 Android 开发中,测试不是可选项,而是保证代码质量、减少线上事故的必备工程实践。本文将带你从零开始搭建一套完整的测试体系,涵盖单元测试、Android...
冷启动是用户对一个应用的第一印象。很多团队做启动优化时习惯"东砍一刀西砍一刀",删了几个初始化、加了个懒加载,数据却没什么变化。根本原因是:没有先拿到瀑布图,就...
在 Android 应用开发中,我们经常需要为不同的应用市场、测试环境或灰度发布构建不同的 APK 版本。这些版本可能有着不同的包名、服务端地址、第三方 SDK...
在移动应用开发中,APK 体积直接影响用户下载意愿和留存率。据 Google 统计,APK 每增加 6MB,安装转化率下降 1%。本文将系统讲解 APK 瘦身的...
很多鸿蒙应用在数据层的用法停留在"建表、增删改查"这一层。功能能跑,但一旦遇到批量写入性能差、升级后表结构对不上、敏感数据明文落盘这三类问题,基础用法就不够了。...
线上突然收到 OOM 崩溃告警,内存曲线持续上涨不回落,用户反馈"用久了就卡"。这种场景下,内存泄漏往往是第一嫌疑人。本文从一次真实的泄漏排查过程出发,讲清楚如...
Android 开发中,多线程是绕不开的话题。从最初的 Thread + Handler 到后来的 AsyncTask,再到如今的 Executor 和 Cor...
做 Android 状态管理时,很多团队把 StateFlow 和 SharedFlow 当成"差不多的东西"混着用,直到线上出现两类典型 Bug:一类是 To...
在鸿蒙应用里做 IM、行情推送、协同编辑这类实时业务,@ohos.net.webSocket 是绕不开的基础能力。但直接裸用官方 API 上线,几乎必然会遇到三...
在 HarmonyOS 应用开发中,ArkUI 的声明式渲染管线是保障高性能 UI 更新的核心机制。开发者只需声明状态与 UI 的映射关系,框架自动完成最小化更...
冷启动 = 进程不存在 → 启动进程 → 加载 Application → 创建首个 Activity → 首帧渲染完成。
ArkTS 的多线程模型(taskpool、Worker)不像 JVM 那样共享堆内存。跨线程默认走结构化克隆(structured clone),代价是拷贝开...
Paging 3 是 Jetpack 组件库中专门用于分页加载的库,可以高效处理大数据集,避免一次性加载过多数据导致内存溢出或界面卡顿。
暂未填写公司和职称
暂未填写个人简介
暂未填写技能专长
暂未填写学校和专业
暂未填写个人网址
暂未填写所在城市