我正在开发android使用android批注。我有一个单身可观察对象,我想以观察者的身份添加活动。如下所示:删除观察员上摧毁()android
@EActivity(R.layout.myActivity)
public class MyActivity extends SherlockActivity implements Observer {
@Bean //has singleton scope
protected Observerable o;
@Override
public void onCreate() {
o.registerObserver(this);
}
@Override
public void onDestroy() {
o.unregisterObserver(this);
}
//more code
我的问题在于on destroy方法。会不会出现在那里的Android停止或暂停状态期间杀死活性而不调用onDestroy()
的情况吗?如果是这种情况,我的Observerable
可能会保留对系统不再使用的活动的实时参考,这是不好的。或者情况并非如此?如果这是我的推测,那就是在我的注册观察员名单中保留对我所有活动的弱引用,以便他们可以自动取消注册。这是一个很好的解决方案还是不需要?
您正在使用Observer的目的? – Dharmendra
我正在通过ormlite修改域对象。所有使这些对象响应通过观察者通知创建/读取/更新修改的活动。因此,例如,我的可观察性允许我通过OrmLite存储库将新的域对象添加到数据库,并且通过观察者实现将查看所有域列表的活动通知给新域。 – mogronalol