元服务的生命周期管理:轻量也要规范

元服务“即点即用”的背后,是严谨的生命周期管理:系统会在合适时机创建、挂起、销毁服务实例。开发者理解生命周期,才能正确管理资源。

Ability生命周期

  • onCreate:服务创建(初始化数据);
  • onForeground:进入前台(可见);
  • onBackground:进入后台(隐藏);
  • onDestroy:服务销毁(释放资源);
  • 在对应回调里做“该做的事”,系统状态切换才不乱。

卡片的生命周期

卡片创建:onAddForm(用户添加卡片);卡片更新:onUpdateForm(定时/事件);卡片删除:onRemoveForm(用户删除);卡片事件:onClickForm(点击交互)。卡片生命周期独立于主服务。

资源管理

轻量是元服务的“人设”:及时释放内存(图片、缓存);避免常驻后台(系统会回收);合理使用定时器(用完清除);数据持久化(Preferences轻量存储)。

状态保存

页面状态:被挂起后恢复(保存/恢复状态);数据状态:重要数据持久化(Preferences/数据库);进程被杀:重新创建时恢复(onCreate里读数据)。

开发建议

生命周期回调里“做最少的事”(避免卡顿);资源用完即释放(轻量);测试:后台挂起、杀进程、恢复,验证状态管理。

元服务的生命周期管理是“轻量的严谨”:Ability管主服务、卡片独立生命周期、资源及时释放。规范管理,元服务才能“快而不乱”。

发表评论