我有以下代码可以从NETWORK_PROVIDER
和请求位置更新GPS_PROVIDER
。
locManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0,
mNetworkLocationListener);
locManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0,
mGpsLocationListener);
我目前每个都有一个单独的侦听器,但是两个侦听器中的代码是相同的,所以我想将它们组合成一个侦听器,mLocationListener
. 我将把它传递给上面的两个requestLocationUpdates
调用,所以我会继续接收来自这两个来源的更新。
稍后我将注销此共享侦听器
locManager.removeUpdates(mLocationListener);
removeUpdates()
状态的 Javadoc
删除指定 LocationListener 的所有位置更新。
在此调用之后,此侦听器将不再发生更新。
那么,当我两次注册同一个侦听器时,我是否可以安全地假设一次调用removeUpdates()
就足够了,还是我也需要调用removeUpdates()
两次?