0
我工作在Android applciation,我創建了一個停止LocationListener的服務
LocationListener
服務在哪裏我的位置發送到服務器,所有的工作,但
stopservice()
的服務保持運行,有沒有解決這個問題的方法?
我工作在Android applciation,我創建了一個停止LocationListener的服務
LocationListener
服務在哪裏我的位置發送到服務器,所有的工作,但
stopservice()
的服務保持運行,有沒有解決這個問題的方法?
在服務,只需撥打stopSelf()你與位置更新完成後:
MyLocationService.this.stopSelf();
,如果您使用的是過時import android.location.LocationListener
或新import com.google.android.gms.location.LocationListener
也根據你需要的服務onDestory刪除更新的位置監聽器或斷開API客戶端:
老:
@Override
public void onDestroy() {
if (myLocationListener) {
myLocationManager.removeUpdates(myLocationListiener);
}
}
新:
@Override
public void onDestroy() {
if (myGoogleApiClient) {
myGoogleApiClient.disconnect();
}
}
我使用的是進口android.location.LocationListener和我打電話removeUpdates()和同樣的事情沒有工作 – Adams
@Adams,您正在使用的一個已被棄用和谷歌大力鼓勵使用新的gms.location.LocationListener。話雖如此,舊的應該仍然有效。你唯一的問題是你無法停止服務?我假定LocationListener在你自己的服務中(即MyService extends Service)?如果是這種情況,一旦執行MyService.this.stopSelf();它將不再運行。你試過這個嗎? –
@Adams另外我假設你通過調用startSrevide()來啓動服務?如果你是服務的綁定,你需要調用unbindService()而不是stopService()或stopSelf –