根据查找用户位置的
sample app,监听活动中的位置更改是个好主意:
class MyActivity extends Activity implements LocationListener {
@Inject
private LocationManager locationManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, this);
}
@Override
public void onLocationChanged(Location location) {
// do something with location
}
// ...
}
但是,我不确定.当配置发生更改时,我的活动将被销毁并重新创建,下次将自己注册为侦听器.对旧活动的引用是在LocationManager中进行的,不是吗?
如果我将LocationListener提取为单独的对象,我仍然遇到如何通知当前活动有关新位置的问题(不一定与请求活动相同).
有没有什么共同的模式来解决这个问题?