基于 Linux 内核的开放源代码移动操作系统
在 Android 生态中,多个应用可能同时尝试向同一输出设备播放音频。音频焦点(Audio Focus)正是为解决这一冲突而生的系统级协调机制——它并非简单的...
移动应用中,大量页面都可以归结为“展示一组数据”:消息流适合纵向列表,频道入口适合网格,商品页面还可能同时包含分组、滚动定位、增删更新和空状态。
前台服务并不是“永远不会被杀”的后台线程,而是一种需要向用户持续可见、同时受系统严格约束的任务执行方式。本文从基本规则出发,逐步梳理系统版本适配、工程实现、异常...
在 ArkUI 的声明式开发模式中,页面并不是靠手动查找控件并修改属性来刷新,而是由状态驱动界面重新构建。状态变化后,框架识别依赖该状态的 UI,并更新相关部分...
当 Android 项目从单模块扩展到多个业务模块,页面跳转很容易从几行 `navigate()` 变成一张难以维护的网:路由参数散落、模块互相依赖、深链规则重...
大家好,我是程序员天天困。今天聊一个能让你少写一大堆回调的东西——EventBus,一个在 Android 和 Java 里都挺火的事件发布订阅库。我自己做后端...
页面布局解决的是组件如何排列,基础组件解决的则是用户看到什么、输入什么以及如何触发操作。在 ArkUI 中,Text、Image、Button 和 TextIn...
很多后台任务的代码并不复杂:上传日志、同步数据、清理缓存,真正困难的是如何面对进程被杀、网络波动、重复点击和系统调度延迟。把一段协程放进 WorkManager...
本文参与 #WorkBuddy# 话题征文 附完整代码、配置、踩坑记录,图省事可以直接复制用。
十年前下载一个微信APK只要 10MB,现在同样一个安装包要 200MB+。这不仅仅是微信的问题——几乎所有的现代安卓应用都越来越臃肿。这篇文章分析 APK 变...
在简单页面里,一个 MutableStateFlow<Boolean> 表示加载状态,再加一个数据流,通常就能完成需求。但页面一旦同时包含首屏加载、下拉刷新、分...
做 HarmonyOS 应用时,页面开发最先接触到的通常不是复杂的系统能力,而是 ArkUI。ArkUI 的核心特点是声明式:开发者描述页面在某个状态下应该长什...
很多项目刚接入网络请求时,只要能把接口调通就算完成:Retrofit 定义接口,OkHttp 创建客户端,Repository 里调用一下,页面拿到数据就展示。...
很多 Android 应用都会把用户设置、缓存、离线内容或业务草稿放在本地数据库里。功能早期,表结构通常很简单;产品迭代几轮后,就会遇到新增字段、拆表、合表、索...
RustDesk 迎来了 1.4.9 Latest 版本更新,发布时间为 2026年7月10日。对于正在关注 RustDesk 最新版本动态的用户来说,这次更新...
在 HarmonyOS 应用开发里,Ability 是承载所有可运行能力的最小单元。不管是启动一个页面、跑一段后台服务,还是接受外部拉起,几乎都会落在某个 Ab...
一个 Android 项目刚开始写的时候,代码量小,逻辑集中在 Activity 或 Fragment 里也还能接受。但随着功能增长,界面复杂,网络请求、数据缓...