Здравствуйте, сейчас я изучаю, как использовать AndEngine вместе с GPS-местоположением телефона. Я решил, что получить доступ к этой информации не должно быть слишком сложно, поэтому я просто взял ChangeableText, и я пытаюсь настроить его, чтобы я мог видеть, что он правильно захватывает местоположение, в основном то, что я сделал, это:
добавлено «реализует LocationListener» в объявление класса
public class ChangeableTextExample extends BaseExample implements LocationListener{
добавлены переменные местоположения и менеджер местоположения в поля класса:
private long curlat;
private long curlng;
private LocationManager locationManager;
создал экземпляр locationManager в методе onLoadScene():
locationManager = (LocationManager) getSystemService(LOCATION_SERVICE);
установите elapsedText для вывода переменных curlat и curlng:
scene.registerUpdateHandler(new TimerHandler(1 / 20.0f, true, new ITimerCallback() {
public void onTimePassed(final TimerHandler pTimerHandler) {
elapsedText.setText("Location: " + curlat + ", " + curlng);
fpsText.setText("FPS: " + fpsCounter.getFPS());
}
}));
и реализуйте метод onLocationChanged(Location arg), чтобы он обновлял поля curlat,curlng.
public void onLocationChanged(Location location) {
this.curlat = (long) (location.getLatitude()*1E6);
this.curlng = (long) (location.getLongitude()*1E6);
}
К сожалению, это не работает, и мне было интересно, может ли кто-нибудь из вас указать мне правильное направление? Я новичок в программировании для Android и еще новичок в программировании с AndEngine. Я предполагаю, что это как-то связано с тем, что locationManager не создан должным образом?
Спасибо!