- 你的测试用例中,是否包含App前后台切换App前后台切换是我们平时常用的一个操作,比如:按手机的home键将应用置于后台、直接按手机电源键关闭屏幕或者通过最近打开的应用列表切换应用等,由此,我们可以得出结论:当app置于前台时,它的页面对我们是可见的;当app置于后台时,它的页面对我们是不可见的。 无论对于Android还是IOS,app前后台切换的流程都很长,因为牵扯到应用生命周期的管理... 你的测试用例中,是否包含App前后台切换App前后台切换是我们平时常用的一个操作,比如:按手机的home键将应用置于后台、直接按手机电源键关闭屏幕或者通过最近打开的应用列表切换应用等,由此,我们可以得出结论:当app置于前台时,它的页面对我们是可见的;当app置于后台时,它的页面对我们是不可见的。 无论对于Android还是IOS,app前后台切换的流程都很长,因为牵扯到应用生命周期的管理...
- Android Studio Rabbit 2 稳定版最显眼的功能是“自带智能体”:你可以在 Studio 里选择 Claude Agent、Codex、Antigravity,或者任何符合 ACP 规范的智能体,数量超过 40 个。但真正值得留意的是配套的 CLI 能力。Android CLI 现在支持设备串流——通过 Firebase 在真实设备上远程测试,不需要本地插设备;支持Comp... Android Studio Rabbit 2 稳定版最显眼的功能是“自带智能体”:你可以在 Studio 里选择 Claude Agent、Codex、Antigravity,或者任何符合 ACP 规范的智能体,数量超过 40 个。但真正值得留意的是配套的 CLI 能力。Android CLI 现在支持设备串流——通过 Firebase 在真实设备上远程测试,不需要本地插设备;支持Comp...
- Android 手工打包:用 aapt2 + d8 走一遍 APK 链路,构建出错才有处可查用 Gradle 打包 Android 应用很方便,但一旦构建失败,报错往往藏在插件和缓存后面,很难定位。把链路拆开手工走一遍——aapt2 编译资源、javac 编译代码、d8 转 dex、zipalign 对齐、apksigner 签名——每一步的产物都看得见,出问题就知道卡在哪一环。这条链路也... Android 手工打包:用 aapt2 + d8 走一遍 APK 链路,构建出错才有处可查用 Gradle 打包 Android 应用很方便,但一旦构建失败,报错往往藏在插件和缓存后面,很难定位。把链路拆开手工走一遍——aapt2 编译资源、javac 编译代码、d8 转 dex、zipalign 对齐、apksigner 签名——每一步的产物都看得见,出问题就知道卡在哪一环。这条链路也...
- # 当你的手机说你在北京,但你明明在上海——Android 位置伪装检测实战> 一部手机、一个 Xposed 模块,就能让微信以为你在故宫打卡、让钉钉以为你在工位上。位置伪装在灰产和安全研究中已不新鲜,但如何**检测**它?本文记录了一个从零到发布的 Android 位置伪装检测工具的完整开发过程。## 一、问题背景:位置伪装是怎么做到的Android 系统的位置服务架构可以简化为三层:``... # 当你的手机说你在北京,但你明明在上海——Android 位置伪装检测实战> 一部手机、一个 Xposed 模块,就能让微信以为你在故宫打卡、让钉钉以为你在工位上。位置伪装在灰产和安全研究中已不新鲜,但如何**检测**它?本文记录了一个从零到发布的 Android 位置伪装检测工具的完整开发过程。## 一、问题背景:位置伪装是怎么做到的Android 系统的位置服务架构可以简化为三层:``...
- Android Debug Bridge,通常简称为 ADB,是 Google 官方随 Android SDK 一同提供的命令行调试工具,也是 Android 开发生态中最为基础且不可替代的组件之一。它的核心定位是充当计算机与 Android 设备之间的通信桥梁,使开发者、测试工程师以及安全研究人员能够在 PC 端对手机、平板、手表、电视乃至车载系统执行应用安装、文件传输、日志抓取、Shel... Android Debug Bridge,通常简称为 ADB,是 Google 官方随 Android SDK 一同提供的命令行调试工具,也是 Android 开发生态中最为基础且不可替代的组件之一。它的核心定位是充当计算机与 Android 设备之间的通信桥梁,使开发者、测试工程师以及安全研究人员能够在 PC 端对手机、平板、手表、电视乃至车载系统执行应用安装、文件传输、日志抓取、Shel...
- 书籍是人类进步的阶梯,在手机上阅读电子书,既可以学习又可以娱乐。早在2022年出版的《Android Studio开发实战:从零基础到App上线(第3版)》中,笔者就基于Android实现了一个具备翻页浏览功能的电子书APP,不仅支持常见的PDF格式,还支持开放标准EPUB格式,还支持古籍数字化的DJVU格式,可谓小巧的电子书架。《鸿蒙HarmonyOS 6应用开发:从零基础到App上线》... 书籍是人类进步的阶梯,在手机上阅读电子书,既可以学习又可以娱乐。早在2022年出版的《Android Studio开发实战:从零基础到App上线(第3版)》中,笔者就基于Android实现了一个具备翻页浏览功能的电子书APP,不仅支持常见的PDF格式,还支持开放标准EPUB格式,还支持古籍数字化的DJVU格式,可谓小巧的电子书架。《鸿蒙HarmonyOS 6应用开发:从零基础到App上线》...
- 分享在 Android 手机上用 PRoot 运行 Ubuntu 24.04 的完整实践:原理、安装步骤、性能体验与自动化踩坑笔记。 分享在 Android 手机上用 PRoot 运行 Ubuntu 24.04 的完整实践:原理、安装步骤、性能体验与自动化踩坑笔记。
- Android 列表差量更新与 DiffUtil列表更新最直接的做法是 notifyDataSetChanged,但全量刷新会丢失输入焦点、动画和滚动状态,也会让所有可见 Item 重新绑定。DiffUtil 通过对比新旧数据计算最小变化集,让 RecyclerView 只更新真正变化的项。 一、全量刷新的问题notifyDataSetChanged 让 RecyclerView 忘记当前... Android 列表差量更新与 DiffUtil列表更新最直接的做法是 notifyDataSetChanged,但全量刷新会丢失输入焦点、动画和滚动状态,也会让所有可见 Item 重新绑定。DiffUtil 通过对比新旧数据计算最小变化集,让 RecyclerView 只更新真正变化的项。 一、全量刷新的问题notifyDataSetChanged 让 RecyclerView 忘记当前...
- Android 自定义 View 与绘制性能自定义 View 让界面可以突破标准控件的限制,但也把绘制性能的责任交给了开发者。onMeasure、onLayout、onDraw 的调用频率很高,任何不必要的对象创建、布局读取和复杂计算都可能放大成滚动掉帧。 一、测量模式必须正确处理onMeasure 中必须处理 EXACTLY、AT_MOST 和 UNSPECIFIED 三种模式,否则控件... Android 自定义 View 与绘制性能自定义 View 让界面可以突破标准控件的限制,但也把绘制性能的责任交给了开发者。onMeasure、onLayout、onDraw 的调用频率很高,任何不必要的对象创建、布局读取和复杂计算都可能放大成滚动掉帧。 一、测量模式必须正确处理onMeasure 中必须处理 EXACTLY、AT_MOST 和 UNSPECIFIED 三种模式,否则控件...
- Android 自定义 View 与绘制性能自定义 View 让界面可以突破标准控件的限制,但也把绘制性能的责任交给了开发者。onMeasure、onLayout、onDraw 的调用频率很高,任何不必要的对象创建、布局读取和复杂计算都可能放大成滚动掉帧。 一、测量模式必须正确处理onMeasure 中必须处理 EXACTLY、AT_MOST 和 UNSPECIFIED 三种模式,否则控件... Android 自定义 View 与绘制性能自定义 View 让界面可以突破标准控件的限制,但也把绘制性能的责任交给了开发者。onMeasure、onLayout、onDraw 的调用频率很高,任何不必要的对象创建、布局读取和复杂计算都可能放大成滚动掉帧。 一、测量模式必须正确处理onMeasure 中必须处理 EXACTLY、AT_MOST 和 UNSPECIFIED 三种模式,否则控件...
- Android 导航组件与深层链接设计页面跳转不只是调用一个方法。返回栈结构、参数类型、深链解析和页面状态恢复共同构成导航体系。导航设计混乱时,用户会遇到返回异常、页面重复、参数丢失和通知跳转失败等问题。 一、导航图是页面关系的一等公民导航图应显式声明页面、参数和跳转关系,而不是把目标类名散落在各个按钮中。findNavController().navigate( ProductLi... Android 导航组件与深层链接设计页面跳转不只是调用一个方法。返回栈结构、参数类型、深链解析和页面状态恢复共同构成导航体系。导航设计混乱时,用户会遇到返回异常、页面重复、参数丢失和通知跳转失败等问题。 一、导航图是页面关系的一等公民导航图应显式声明页面、参数和跳转关系,而不是把目标类名散落在各个按钮中。findNavController().navigate( ProductLi...
- Android 导航组件与深层链接设计页面跳转不只是调用一个方法。返回栈结构、参数类型、深链解析和页面状态恢复共同构成导航体系。导航设计混乱时,用户会遇到返回异常、页面重复、参数丢失和通知跳转失败等问题。 一、导航图是页面关系的一等公民导航图应显式声明页面、参数和跳转关系,而不是把目标类名散落在各个按钮中。findNavController().navigate( ProductLi... Android 导航组件与深层链接设计页面跳转不只是调用一个方法。返回栈结构、参数类型、深链解析和页面状态恢复共同构成导航体系。导航设计混乱时,用户会遇到返回异常、页面重复、参数丢失和通知跳转失败等问题。 一、导航图是页面关系的一等公民导航图应显式声明页面、参数和跳转关系,而不是把目标类名散落在各个按钮中。findNavController().navigate( ProductLi...
- Android Room 数据库迁移与版本管理本地数据库一旦发布,结构就变成了契约的一部分。升级时删除表、重建库或丢失用户数据,代价远高于开发阶段的任何便利。Room 的迁移机制要求开发者显式处理版本变化,这正是为了避免线上数据不可恢复。 一、数据库版本必须只增不减Room 通过版本号判断当前结构与代码模型是否一致。发布到线上的每个版本都应有稳定的版本号和迁移路径。@Database( ... Android Room 数据库迁移与版本管理本地数据库一旦发布,结构就变成了契约的一部分。升级时删除表、重建库或丢失用户数据,代价远高于开发阶段的任何便利。Room 的迁移机制要求开发者显式处理版本变化,这正是为了避免线上数据不可恢复。 一、数据库版本必须只增不减Room 通过版本号判断当前结构与代码模型是否一致。发布到线上的每个版本都应有稳定的版本号和迁移路径。@Database( ...
- Android 协程取消与结构化并发协程让异步代码更接近同步写法,但也引入了新的生命周期问题。页面销毁后协程是否还在执行、请求结果是否还会写回界面、取消是否真正停止了任务,这些都是决定代码是否稳定的关键点。结构化并发要求并发任务的生命周期与业务作用域绑定,而不是散落在各处自由运行。 一、协程作用域与生命周期绑定协程不应随意使用 GlobalScope 启动。页面级任务应绑定页面生命周期,请... Android 协程取消与结构化并发协程让异步代码更接近同步写法,但也引入了新的生命周期问题。页面销毁后协程是否还在执行、请求结果是否还会写回界面、取消是否真正停止了任务,这些都是决定代码是否稳定的关键点。结构化并发要求并发任务的生命周期与业务作用域绑定,而不是散落在各处自由运行。 一、协程作用域与生命周期绑定协程不应随意使用 GlobalScope 启动。页面级任务应绑定页面生命周期,请...
- Android 协程取消与结构化并发协程让异步代码更接近同步写法,但也引入了新的生命周期问题。页面销毁后协程是否还在执行、请求结果是否还会写回界面、取消是否真正停止了任务,这些都是决定代码是否稳定的关键点。结构化并发要求并发任务的生命周期与业务作用域绑定,而不是散落在各处自由运行。 一、协程作用域与生命周期绑定协程不应随意使用 GlobalScope 启动。页面级任务应绑定页面生命周期,请... Android 协程取消与结构化并发协程让异步代码更接近同步写法,但也引入了新的生命周期问题。页面销毁后协程是否还在执行、请求结果是否还会写回界面、取消是否真正停止了任务,这些都是决定代码是否稳定的关键点。结构化并发要求并发任务的生命周期与业务作用域绑定,而不是散落在各处自由运行。 一、协程作用域与生命周期绑定协程不应随意使用 GlobalScope 启动。页面级任务应绑定页面生命周期,请...
上滑加载中
推荐直播
-
华为云码道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华为软件挑战赛冠军
高手来了:看软挑高手解析二维排样问题—从工业难题到算法突破
回顾中
热门标签