Android 提供了一个服务基础设施,但是对于我目前的简单需求来说有点冗长。我正在使用单例提供服务,该服务具有一些内部状态。
我将内部状态保存在一个SharedPreferences
包中。要获得单例的实例,Context
需要 a ,在第一次需要单例来创建它时使用它来读取首选项:
MyService mS = MyServiceImpl.getInstance((Context) this);
从那时起,Context
忽略传递的参数并从内存中读取首选项。
现在,我想在退出时将内部状态保留回包。但是,不支持关闭挂钩,我真的不想跟踪正在使用该服务的 Activity。
是否有一个简单的解决方案,类似于关闭挂钩,或者我必须使用绑定Service
并在每个中绑定/取消绑定它Activity
?