元服务“即点即用”的背后,是严谨的生命周期管理:系统会在合适时机创建、挂起、销毁服务实例。开发者理解生命周期,才能正确管理资源。
Ability生命周期
- onCreate:服务创建(初始化数据);
- onForeground:进入前台(可见);
- onBackground:进入后台(隐藏);
- onDestroy:服务销毁(释放资源);
- 在对应回调里做“该做的事”,系统状态切换才不乱。
卡片的生命周期
卡片创建:onAddForm(用户添加卡片);卡片更新:onUpdateForm(定时/事件);卡片删除:onRemoveForm(用户删除);卡片事件:onClickForm(点击交互)。卡片生命周期独立于主服务。
资源管理
轻量是元服务的“人设”:及时释放内存(图片、缓存);避免常驻后台(系统会回收);合理使用定时器(用完清除);数据持久化(Preferences轻量存储)。
状态保存
页面状态:被挂起后恢复(保存/恢复状态);数据状态:重要数据持久化(Preferences/数据库);进程被杀:重新创建时恢复(onCreate里读数据)。
开发建议
生命周期回调里“做最少的事”(避免卡顿);资源用完即释放(轻量);测试:后台挂起、杀进程、恢复,验证状态管理。
元服务的生命周期管理是“轻量的严谨”:Ability管主服务、卡片独立生命周期、资源及时释放。规范管理,元服务才能“快而不乱”。