Я понимаю, что OP принял вышеупомянутый ответ, но у меня есть чувство, что OP хочет получить более простой ответ.
Я предполагаю, что у OP есть приложение Android с активностью. Я объявил мину так:
public class HelloAndroidActivity extends Activity implements LocationListener {
ОП был смущен относительно того, как методы жизненного цикла работали и когда работа должна быть выполнена. Мое резюме и Pause методы будут выглядеть следующим образом:
@Override
protected void onPause() {
((LocationManager)getSystemService(Context.LOCATION_SERVICE)).removeUpdates(this);
super.onPause();
}
@Override
protected void onResume() {
((LocationManager)getSystemService(Context.LOCATION_SERVICE)).requestLocationUpdates(LocationManager.GPS_PROVIDER, 5 * 1000, 1, this);
super.onResume();
}
Обрати внимание, что мой onResume спрашивает, что я получать уведомления, когда есть обновления местоположения и метод OnPause спрашивает, что я больше не буду уведомлен. Вы должны быть осторожны, чтобы не запрашивать обновления с меньшим временным интервалом, чем вам действительно нужно, или вы разрядите батарею.
Поскольку деятельность реализует LocationListener моего onLocationChanged метод выглядит следующим образом:
@Override
public void onLocationChanged(Location location) {
// Update the location fields
((EditText)findViewById(R.id.latField)).setText(Double.toString(location.getLatitude()));
((EditText)findViewById(R.id.longField)).setText(Double.toString(location.getLongitude()));
}
Это просто занимает новое место и обновляет некоторые EditText поля текста, что я имею в моей деятельности. Единственное, что мне нужно сделать, чтобы добавить разрешение GPS на мой манифест:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
Так что, если бы я с вопросом, как начать использовать менеджер местоположения и услуги определения местоположения это было бы, как я бы начал. Я не пытаюсь отнять что-либо от принятого ответа, я просто думаю, что было фундаментальное непонимание того, что делать в onResume и методах onLocationMethodChanged.
Вы не должны звонить по телефону. Что вы хотите, чтобы произойти с изменением местоположения? – ditkin
Я должен получить координаты оттуда и работать с ним в onResume() –