04_Broadcast安全与最佳实践_修订版


04 Broadcast 安全与跨应用通信最佳实践 基于原 PDF 修订、联网校对并补充缺失内容 1. Broadcast 安全模型的核心问题 Broadcast 的 action 命名空间是全局的,隐式广播可能被任何匹配的应用接收;导出的 receiver 也可能被其他应用伪造广播触发。因此,Br

05_Broadcast源码机制与面试要点_修订版


05 Broadcast 源码机制与面试要点 基于原 PDF 修订、联网校对并补充缺失内容 1. 系统广播的大致链路 从源码角度看,系统广播不是“直接调用所有 receiver”。发送、注册、查询匹配、排队和进程调度都经过系统服务协调。面试时可以用下面的链路表达,不需要死背每个类名。 接收方注册:M

01_Broadcast基础与分类_修订版


01 Broadcast 基础与分类 基于原 PDF 修订、联网校对并补充缺失内容 1. Broadcast 是什么 Broadcast 是 Android 中基于 Intent 的消息发布/订阅机制。发送方通过 Intent 表达“发生了什么”,接收方通过 IntentFilter 订阅感兴趣的

03_系统广播与版本限制_修订版


03 系统广播与版本限制 基于原 PDF 修订、联网校对并补充缺失内容 1. 系统广播不是“永远都能收到” 原 PDF 列出了一批系统广播,但没有说明版本限制。现代 Android 为了省电、隐私和性能,对广播投递做了大量限制。学习系统广播时,一定要同时记住 targetSdkVersion、注册方

02_BroadcastReceiver注册方式与生命周期_修订版


02 BroadcastReceiver 注册方式与生命周期 基于原 PDF 修订、联网校对并补充缺失内容 1. BroadcastReceiver 的核心职责 BroadcastReceiver 是接收广播的组件。真正需要重写的方法是 onReceive(Context context, Inte

06-Activity组件通信与Scheme跳转


Activity 组件通信与 Scheme 跳转 1. Activity 与 Activity 通信 最常见方式是: Intent + Bundle 示例: Intent intent = new Intent(FirstActivity.this, SecondActivity.class);

05-Activity任务栈与启动模式


Activity 任务栈与四种启动模式 1. 什么是任务栈? 任务栈是 Android 用来管理 Activity 返回关系的一种结构。 特点是: 后进先出 最后打开的 Activity 在栈顶 按返回键时,栈顶 Activity 出栈 例如: A → B → C 任务栈可以理解为:

03-Activity横竖屏切换与configChanges


Activity 横竖屏切换与 configChanges 1. 横竖屏切换为什么会影响生命周期? 横竖屏切换属于系统配置变化。 例如: 竖屏 → 横屏 横屏 → 竖屏 屏幕方向变化后,屏幕尺寸、布局资源、图片资源等都可能发生变化,所以 Android 默认可能会销毁并重建 Activity,以便

04-Activity进程优先级与onDestroy可靠性


Activity 进程优先级与 onDestroy 可靠性 1. Android 为什么要有进程优先级? Android 是多任务系统,后台可能有很多 App 进程。 当系统内存不足时,系统会根据进程的重要程度决定优先回收哪些进程。 可以简单理解为: 越靠近用户正在操作的进程,优先级越高; 越远离用

02-Activity异常生命周期与状态恢复


Activity 异常生命周期与状态恢复 1. 什么是异常生命周期? 正常生命周期通常由用户操作触发: 打开页面 切换页面 按 Home 按返回键 异常生命周期通常由系统环境变化或资源回收触发: 横竖屏切换 语言切换 深色模式变化 屏幕尺寸变化 字体缩放变化 多窗口尺寸变化 内存不足导致进程被