活动、服务、提供器与广播:四大组件拆给你看
详情页顶部的「Components(组件)」入口,是这款工具最极客的部分。安卓应用内部由四类零件构成,这里把它们全部摊开。
四个标签页
| 组件 | 职责 | 排查什么 |
|---|---|---|
| Activities | 一个个可交互的界面入口 | 有哪些隐藏页面、哪些界面能直接建快捷方式 |
| Services | 后台长期运行的服务 | 耗电、常驻通知、后台保活的元凶在哪 |
| Providers | 跨应用的数据提供器 | 谁在读写共享数据 |
| Broadcasts | 广播接收器,监听系统事件 | 开机自启、网络变化监听等行为 |
3.0 版本做了一次整合:原本分散的四个页面合并成一个带标签页的 Components 界面,切换更顺手。
对普通用户的实际价值
不需要会开发,这些信息照样能回答日常疑问:
- 应用为什么后台关不干净:进 Services 标签数一数常驻服务就明白了;
- 应用都监听了什么:Broadcasts 列表里能看到它对开机完成、网络切换这类系统事件的兴趣;
- 某个功能藏在哪个界面:Activities 列表把应用的每一屏都列了出来。
延伸玩法:界面快捷方式
从 3.0 起,可以为应用的任意 Activity 创建桌面快捷方式——相当于给应用里的某个深层功能页在桌面开直达入口,不用每次都从首页层层点进去。
开发者向的细节
每个组件点进去还有更深的属性:Activity 的启动模式与配置变更项(3.0 时代完善)、Service 的标志位(3.8 起支持「Native service」新标记)等,做逆向分析或适配排查时用得上。
相关文档:创建活动快捷方式 · 信息卡字段解读 · Manifest 声明文件