- Android 权限适配全指南:从 6.0 到 15,一次讲透Android 权限体系从 6.0(API 23)引入运行时权限开始,几乎每个大版本都在收紧。本文按版本演进梳理权限变化、给出可落地的适配代码与避坑清单,帮你一次过审、少踩坑。 目录权限分类与基础运行时权限(API 23+)分区存储 Scoped Storage(API 29+)包可见性 Package Visibility(A... Android 权限适配全指南:从 6.0 到 15,一次讲透Android 权限体系从 6.0(API 23)引入运行时权限开始,几乎每个大版本都在收紧。本文按版本演进梳理权限变化、给出可落地的适配代码与避坑清单,帮你一次过审、少踩坑。 目录权限分类与基础运行时权限(API 23+)分区存储 Scoped Storage(API 29+)包可见性 Package Visibility(A...
- Android 权限适配全指南:从 6.0 到 15,一次讲透Android 权限体系从 6.0(API 23)引入运行时权限开始,几乎每个大版本都在收紧。本文按版本演进梳理权限变化、给出可落地的适配代码与避坑清单,帮你一次过审、少踩坑。 目录权限分类与基础运行时权限(API 23+)分区存储 Scoped Storage(API 29+)包可见性 Package Visibility(A... Android 权限适配全指南:从 6.0 到 15,一次讲透Android 权限体系从 6.0(API 23)引入运行时权限开始,几乎每个大版本都在收紧。本文按版本演进梳理权限变化、给出可落地的适配代码与避坑清单,帮你一次过审、少踩坑。 目录权限分类与基础运行时权限(API 23+)分区存储 Scoped Storage(API 29+)包可见性 Package Visibility(A...
- Android 权限适配全指南:从 6.0 到 15,一次讲透Android 权限体系从 6.0(API 23)引入运行时权限开始,几乎每个大版本都在收紧。本文按版本演进梳理权限变化、给出可落地的适配代码与避坑清单,帮你一次过审、少踩坑。 目录权限分类与基础运行时权限(API 23+)分区存储 Scoped Storage(API 29+)包可见性 Package Visibility(A... Android 权限适配全指南:从 6.0 到 15,一次讲透Android 权限体系从 6.0(API 23)引入运行时权限开始,几乎每个大版本都在收紧。本文按版本演进梳理权限变化、给出可落地的适配代码与避坑清单,帮你一次过审、少踩坑。 目录权限分类与基础运行时权限(API 23+)分区存储 Scoped Storage(API 29+)包可见性 Package Visibility(A...
- Android Gradle 构建性能优化项目变大后,构建慢会直接影响开发反馈速度。构建耗时可能来自配置阶段脚本执行、依赖解析、注解处理、资源合并和无法增量的自定义任务。优化不能只增加机器资源,应先用构建分析找到最耗时且最常发生的路径。 一、区分配置与执行阶段Gradle 首先读取项目和模块配置,再执行任务。模块数量增加后,即使只编译一个小改动,配置阶段也可能消耗明显时间。构建脚本中应避免... Android Gradle 构建性能优化项目变大后,构建慢会直接影响开发反馈速度。构建耗时可能来自配置阶段脚本执行、依赖解析、注解处理、资源合并和无法增量的自定义任务。优化不能只增加机器资源,应先用构建分析找到最耗时且最常发生的路径。 一、区分配置与执行阶段Gradle 首先读取项目和模块配置,再执行任务。模块数量增加后,即使只编译一个小改动,配置阶段也可能消耗明显时间。构建脚本中应避免...
- Google开源AI测试框架ARTEMIS,支持自然语言驱动Android真机自动化:理解任务、识别界面、跨App操作、自动截图/日志采集并生成报告。原生集成MCP,可接入Antigravity等AI IDE,实现“描述目标→自主执行→分析结果”闭环。 Google开源AI测试框架ARTEMIS,支持自然语言驱动Android真机自动化:理解任务、识别界面、跨App操作、自动截图/日志采集并生成报告。原生集成MCP,可接入Antigravity等AI IDE,实现“描述目标→自主执行→分析结果”闭环。
- Android 分层测试策略测试的目标不是追求用例数量,而是用合适成本发现高风险问题。所有逻辑都依赖真机界面测试,会执行缓慢且定位困难;只写纯单元测试,又覆盖不了数据库、生命周期和系统交互。分层测试通过不同范围的测试形成互补。 一、划分测试层级可以把常见测试分为:单元测试:验证纯业务规则、状态转换和数据映射。组件测试:验证数据库、仓库或自定义控件的局部集成。页面测试:验证主要界面状态与用户... Android 分层测试策略测试的目标不是追求用例数量,而是用合适成本发现高风险问题。所有逻辑都依赖真机界面测试,会执行缓慢且定位困难;只写纯单元测试,又覆盖不了数据库、生命周期和系统交互。分层测试通过不同范围的测试形成互补。 一、划分测试层级可以把常见测试分为:单元测试:验证纯业务规则、状态转换和数据映射。组件测试:验证数据库、仓库或自定义控件的局部集成。页面测试:验证主要界面状态与用户...
- Android 内存泄漏排查方法内存泄漏是对象已经失去业务价值,却仍被一条强引用链持有。页面泄漏会让视图、图片和业务数据一起留在内存中,重复进入后可能引发卡顿甚至内存溢出。排查时不应只盯着某个大对象,而要找到从长期存活对象到目标对象的完整引用路径。 一、先确认是否真的泄漏垃圾回收不是立即发生,图片缓存和对象池也会主动保留内存。单次退出页面后内存没有立刻下降,不足以证明泄漏。更可靠的方法是重... Android 内存泄漏排查方法内存泄漏是对象已经失去业务价值,却仍被一条强引用链持有。页面泄漏会让视图、图片和业务数据一起留在内存中,重复进入后可能引发卡顿甚至内存溢出。排查时不应只盯着某个大对象,而要找到从长期存活对象到目标对象的完整引用路径。 一、先确认是否真的泄漏垃圾回收不是立即发生,图片缓存和对象池也会主动保留内存。单次退出页面后内存没有立刻下降,不足以证明泄漏。更可靠的方法是重...
- Android 图片加载与内存控制图片是 Android 应用中常见的内存大户。文件体积很小的压缩图,解码后也可能占用数兆内存;列表快速滚动还会同时产生多个请求、变换和视图复用。图片优化的重点是按展示需求解码、复用统一缓存,并让请求跟随视图生命周期取消。 一、理解解码后的内存位图内存主要由像素宽高和像素格式决定,而不是由文件体积决定。一个高分辨率图片即使压缩得很好,完整解码后仍可能非常大。... Android 图片加载与内存控制图片是 Android 应用中常见的内存大户。文件体积很小的压缩图,解码后也可能占用数兆内存;列表快速滚动还会同时产生多个请求、变换和视图复用。图片优化的重点是按展示需求解码、复用统一缓存,并让请求跟随视图生命周期取消。 一、理解解码后的内存位图内存主要由像素宽高和像素格式决定,而不是由文件体积决定。一个高分辨率图片即使压缩得很好,完整解码后仍可能非常大。...
- Android 无障碍与可操作性设计无障碍不是发布前补充几条描述,而是让界面信息、操作顺序和状态变化能够被不同用户理解。读屏、键盘、放大显示和高对比需求会暴露许多普通视觉检查难以发现的问题。越早在公共组件中建立语义,业务页面的改造成本越低。 一、优先使用有语义的标准控件按钮应使用按钮组件,可输入内容使用输入组件。标准控件已经提供点击、焦点、禁用和读屏角色,自定义 View 模拟按钮时需要手... Android 无障碍与可操作性设计无障碍不是发布前补充几条描述,而是让界面信息、操作顺序和状态变化能够被不同用户理解。读屏、键盘、放大显示和高对比需求会暴露许多普通视觉检查难以发现的问题。越早在公共组件中建立语义,业务页面的改造成本越低。 一、优先使用有语义的标准控件按钮应使用按钮组件,可输入内容使用输入组件。标准控件已经提供点击、焦点、禁用和读屏角色,自定义 View 模拟按钮时需要手...
- 摘要:Google 最近开源了一个很值得测试开发关注的项目——ARTEMIS。它不是帮你简单生成几段 Appium 脚本,而是让 AI Agent 直接操作 Android 真机或模拟器:理解自然语言测试任务、识别页面、点击控件、跨 App 执行业务流程,还能自动获取截图、Logcat、执行轨迹,并生成测试结果。更值得关注的是,ARTEMIS 原生支持 MCP,可以直接接入 Antigrav... 摘要:Google 最近开源了一个很值得测试开发关注的项目——ARTEMIS。它不是帮你简单生成几段 Appium 脚本,而是让 AI Agent 直接操作 Android 真机或模拟器:理解自然语言测试任务、识别页面、点击控件、跨 App 执行业务流程,还能自动获取截图、Logcat、执行轨迹,并生成测试结果。更值得关注的是,ARTEMIS 原生支持 MCP,可以直接接入 Antigrav...
- Android 深色主题与设计令牌深色主题不是把所有颜色反转。文字层级、品牌色、分割线、图片和系统栏都需要在不同外观下保持对比度与一致语义。若业务布局直接写入大量颜色值,切换主题会变成逐页修补。更可维护的方式是先建立语义化设计令牌,再由不同主题提供具体值。 一、颜色名称表达语义相比 gray_333,text_primary、surface_page 和 status_warning 更能... Android 深色主题与设计令牌深色主题不是把所有颜色反转。文字层级、品牌色、分割线、图片和系统栏都需要在不同外观下保持对比度与一致语义。若业务布局直接写入大量颜色值,切换主题会变成逐页修补。更可维护的方式是先建立语义化设计令牌,再由不同主题提供具体值。 一、颜色名称表达语义相比 gray_333,text_primary、surface_page 和 status_warning 更能...
- Android 运行时权限设计与兼容运行时权限不仅是调用一次系统弹窗。不同系统版本会调整权限粒度,用户可能拒绝、仅允许一次、选择部分内容,或者在系统设置中撤销权限。正确设计应以功能能力为中心,按使用时机请求,并为每种明确结果提供可理解的后续路径。 一、先判断是否真的需要权限权限请求越少,用户决策成本和合规风险越低。开发前可以确认:是否有系统选择器可以完成同一目标。是否只需访问用户主动选择的... Android 运行时权限设计与兼容运行时权限不仅是调用一次系统弹窗。不同系统版本会调整权限粒度,用户可能拒绝、仅允许一次、选择部分内容,或者在系统设置中撤销权限。正确设计应以功能能力为中心,按使用时机请求,并为每种明确结果提供可理解的后续路径。 一、先判断是否真的需要权限权限请求越少,用户决策成本和合规风险越低。开发前可以确认:是否有系统选择器可以完成同一目标。是否只需访问用户主动选择的...
- Android 离线优先的数据同步设计离线优先并不意味着所有页面永远展示缓存,而是让界面拥有稳定的本地数据源,并在网络可用时按业务规则同步。设计不当时,常见问题包括本地修改被旧响应覆盖、离线操作重复提交、多个同步任务互相抢写,以及用户看到无法判断新旧的数据。 一、建立单一可观察数据源页面优先观察本地数据库,网络同步只负责更新数据库。这样界面不会在接口结果和本地结果之间反复切换。class ... Android 离线优先的数据同步设计离线优先并不意味着所有页面永远展示缓存,而是让界面拥有稳定的本地数据源,并在网络可用时按业务规则同步。设计不当时,常见问题包括本地修改被旧响应覆盖、离线操作重复提交、多个同步任务互相抢写,以及用户看到无法判断新旧的数据。 一、建立单一可观察数据源页面优先观察本地数据库,网络同步只负责更新数据库。这样界面不会在接口结果和本地结果之间反复切换。class ...
- Android 分页加载与状态管理长列表通常采用分页加载减少首屏等待和内存占用。分页看似只是维护页码,实际还要处理刷新、追加、重复触发、空页、错误重试和数据去重。一个可靠的分页实现,应先明确服务端分页协议,再把刷新与追加建模为不同状态。 一、确认分页协议常见协议有页码分页和游标分页:页码分页通过页号和每页数量请求,适合相对稳定的数据集合。游标分页通过上一页返回的标记继续查询,更适合实时变化... Android 分页加载与状态管理长列表通常采用分页加载减少首屏等待和内存占用。分页看似只是维护页码,实际还要处理刷新、追加、重复触发、空页、错误重试和数据去重。一个可靠的分页实现,应先明确服务端分页协议,再把刷新与追加建模为不同状态。 一、确认分页协议常见协议有页码分页和游标分页:页码分页通过页号和每页数量请求,适合相对稳定的数据集合。游标分页通过上一页返回的标记继续查询,更适合实时变化...
- HarmonyOS 7.0 已于 2026 年 9 月 7 日正式发布,该版本在 HarmonyOS 6.1 基础上增强了若干特性,让鸿蒙系统变得更智能更好用,下面结合《鸿蒙HarmonyOS 6应用开发:从零基础到App上线》一书对 HarmonyOS 7.0 新特性中的常用部分逐一讲解。一、ArkUI(方舟UI框架)新增ArkUI组件级沉浸光感,提供的一套高品质视觉与动效体系,通过沉浸... HarmonyOS 7.0 已于 2026 年 9 月 7 日正式发布,该版本在 HarmonyOS 6.1 基础上增强了若干特性,让鸿蒙系统变得更智能更好用,下面结合《鸿蒙HarmonyOS 6应用开发:从零基础到App上线》一书对 HarmonyOS 7.0 新特性中的常用部分逐一讲解。一、ArkUI(方舟UI框架)新增ArkUI组件级沉浸光感,提供的一套高品质视觉与动效体系,通过沉浸...
上滑加载中
推荐直播
-
华为云码道Agent集成与鸿蒙实战2026/08/11 周二 19:00-21:00
王一男-华为云码道产品规划专家;李炎-华为云码道产品专家;彭江敏-华为云鸿蒙端云一体化开发专家
本次直播带你解读华为云码道7月份产品新特性、新功能。更有专家演示码道Agent Space × 钉钉机器集成实战,从0到1打通消息通道;码道鸿蒙端云一体化实战,快速搭建员工签到系统。
回顾中 -
华为云开发者AI素养直播课·第五期2026/09/04 周五 16:00-18:00
林华鼎-华为云AI开发者运营负责人;蒋春阳-华为云AI开发者案例开发专家
本期直播内容: AI工具体验营 · 第5-8课连讲。Agent-Team 多智能体协作完成毕业设计实践
回顾中 -
华为云开发者AI素养ClassRoom·第六期2026/09/08 周二 19:00-20:00
樊渊-2026华为软件挑战赛冠军
高手来了:看软挑高手解析二维排样问题—从工业难题到算法突破
回顾中
热门标签