Я реализовал GPS в своем приложении, в одном действии, как это:
LocationManager mlocManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
LocationListener mlocListener = new MyLocationListener();
mlocManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, mlocListener);
public class MyLocationListener implements LocationListener
{
public void onLocationChanged(Location location)
{
if (location != null) { //do something}
...
}
Это работает нормально. После дальнейшего развития приложения я понял, что мне нужно использовать GPS более чем в одном упражнении. Мне нужно иметь возможность проверить, активен ли gps и в каком месте он возвращается после 3-х действий.
Представьте себе такой сценарий: пользователь запускает приложение. В фоновом режиме GPS пытается установить спутниковое соединение, пока пользователь выбирает некоторые параметры. Когда я добираюсь до действия, которое требует информации о местоположении, я спрашиваю об этом.
Как мне этого добиться? Должно ли это быть запущено в другом потоке? Пожалуйста, посоветуй мне. Спасибо