2016-03-02 5 views
-2

я начинаю обслуживание от onCreateView какЯ не могу остановить службу местоположения из моего фрагмента. Как это остановить?

getActivity().startService(new Intent(getActivity(), LocationService.class)); 

И я стараюсь, чтобы остановить мое обслуживание как этот

@Override 
public void onDestroyView() { 
    getActivity().stopService(new Intent(getActivity(),LocationService.class)); 
    super.onDestroyView(); 
} 

@Override 
public void onStop() { 
    getActivity().stopService(new Intent(getActivity(), LocationService.class)); 
    super.onStop(); 
} 

@Override 
public void onDestroy() { 
    getActivity().stopService(new Intent(getActivity(), LocationService.class)); 
    super.onDestroy(); 
} 

ответ

0

Я не используется LocationManager в моем классе обслуживания, но я использовал GoogleApiClient, и после многих попыток я использовал следующий код в onDestroy(). Наконец, это делается.

@Override 
public void onDestroy() { 
    super.onDestroy(); 
    if (googleApiClient != null && googleApiClient.isConnected()) { 
     LocationServices.FusedLocationApi.removeLocationUpdates(googleApiClient, this); 
    } 
} 
0

Calling stopService должно хватить - даже один раз в onDestroy. Убедитесь, что вы действительно реализуете onDestroy в своем сервисе и отмените регистрацию своего локатора в нем.

0

попробовать этот метод locationmanager в OnStop или OnDestroy метод SERVISE

locationManager.removeUpdates(LocationTracker.this); 

Эти день и можно использовать для googleplaces месте она обеспечивает простую реализацию Приведи здесь: - http://coderzpassion.com/android-location-using-google-play-services/