【安卓 - 小组件 - app进程与桌面进程】

安卓

有三类工作和三种进程
动作

  1. RemoteView 纯静态 UI渲染
  2. 读取本地静态数据、一些同步的计算逻辑、views.setTextViewText()等普通 Kotlin/Java 代码
  3. 接口请求、图片下载 等 耗时操作(网络 / 数据库)

进程:

  1. Launcher桌面进程 只负责 渲染UI
  2. app已启动 app 进程
  3. app未启动临时 broadcast receiver 进程

关系

动作1 是在 进程1 中运行。

动作2 和 动作3 是在进程 2或者进程3中运行,取决于app当前状态。

但是动作3 比较特殊,需要 额外的 CoroutineScope、IO线程 等来处理。如果运行在临时进程,耗时操作会被杀掉。因为临时线程不保证这些耗时操作可被执行。

相关推荐
kwg12616 小时前
Dify二次开发-AI 应用端反馈指令接收(AI 应用端 → Dify)
前端·数据库·人工智能
哟哟耶耶16 小时前
knowledge-scss学习
前端·学习·scss
坚定信念,勇往无前16 小时前
springboot +mongodb游标分页,性能好。前端存储游标历史
前端·spring boot·mongodb
却话巴山夜雨时i16 小时前
295. 数据流的中位数【困难】
java·服务器·前端
云技纵横16 小时前
Vue无限滚动实战——从原理到企业级优化方案
前端
细心细心再细心16 小时前
响应式记录
前端·vue.js
干就完了116 小时前
关于git的操作命令(一篇盖全),可不用,但不可不知!
前端·javascript
之恒君16 小时前
JavaScript 垃圾回收机制详解
前端·javascript
是你的小橘呀16 小时前
像前任一样捉摸不定的异步逻辑,一文让你彻底看透——JS 事件循环
前端·javascript·面试
Cache技术分享16 小时前
260. Java 集合 - 深入了解 HashSet 的内部结构
前端·后端