Android - Ошибка теста GPS на эмуляторе - PullRequest
3 голосов
/ 25 ноября 2011

Я хочу проверить GPS на моем эмуляторе Android, но я обнаружил, что в моих приложениях произошла ошибка «Неожиданно остановлена» при попытке запустить его на эмуляторе.

здесь какие-то мои коды AndroidManifest.xml

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />

и main.java

public void onCreate(Bundle savedInstanceState){
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    LocationManager locationManager;
    String context = Context.LOCATION_SERVICE;
    locationManager = (LocationManager)getSystemService(context);

    String provider = LocationManager.GPS_PROVIDER;
    Location location = locationManager.getLastKnownLocation(provider);
    updateWithNewLocation(location);
}

private void updateWithNewLocation(Location location){
    String latLongString;
    TextView myLocationText;
    myLocationText = (TextView)findViewById(R.id.myLocationText);
    if(location != null){
        double lat = location.getLatitude();
        double lng = location.getLongitude();
        latLongString = "Lat:" + lat + "\nLong:" + lng;
    }else{
        latLongString = "No location found";
    }
    myLocationText.setText("Your Current Position is: \n" + latLongString);
}

импорт на моем main.java

import android.app.Activity;
import android.content.Context;
import android.location.Location;
import android.location.LocationManager;
import android.os.Bundle;
import android.widget.TextView;

вы можете сказать мне, почему мои приложения "неожиданно остановились", когда я пытаюсьзапустить его на моем эмуляторе?

спасибо за помощь мне:)

Ошибка при трассировке: "java.lang.NullPointerException" Я использовал DDMS для установки long и lat для этого: long:112,8010100 лат: -7,2950700

1 Ответ

2 голосов
/ 25 ноября 2011

Можно смоделировать местоположение в эмуляторе

Предоставление ложных данных о местоположении

При разработке приложения вам непременно нужно проверить, насколько хорошо Ваша модель для получения местоположения пользователя работает. Это легче всего сделать используя настоящий Android-питание устройство. Однако если у вас нет устройства, вы все равно можете проверить функции на основе местоположения путем имитации данных о местоположении в эмуляторе Android. Существует три различных способа отправки данных о местонахождении макета приложения: используя Eclipse, DDMS или команду "geo" в консоли эмулятора.

Примечание. Предоставление данных о ложном местоположении вводится как данные о местоположении GPS, поэтому вы должны запросить обновления местоположения у GPS_PROVIDER для макета данные о местоположении для работы.

Использование Eclipse

Выберите «Окно»> «Показать представление»> «Другое»> «Управление эмулятором».

На панели управления эмулятора введите координаты GPS. в элементах управления местоположением как отдельные координаты широты и долготы с файлом GPX для воспроизведения маршрута или файлом KML для несколько знаков места. (Убедитесь, что у вас выбрано устройство на панели «Устройства» - доступно из меню «Окно»> «Показать представление»> «Другие»> «Устройства».)

Использование DDMS

С помощью инструмента DDMS вы можете моделировать данные о местоположении несколькими различными способами:

Вручную отправьте индивидуальные координаты долготы / широты на устройство. Используйте файл GPX, описывающий маршрут для воспроизведения на устройстве. Используйте файл KML, описывающий отдельные метки места для последовательности Воспроизведение на устройство. Для получения дополнительной информации об использовании DDMS для подмены данных о местоположении см. Использование DDMS.

Использование команды "geo" в консоли эмулятора

Чтобы отправить данные фиктивного местоположения из командной строки:

Запустите ваше приложение в эмуляторе Android и откройте терминал / консоль в вашем каталоге SDK / tools. Подключитесь к консоли эмулятора: телнет localhost Отправьте данные о местоположении: geo fix для отправки фиксированного географического местоположения. Эта команда принимает долготу и широту в десятичных градусах, и дополнительная высота в метрах. Например: geo fix -121.45356 46.51119 4392 geo nmea, чтобы отправить предложение NMEA 0183. Эта команда принимает одно предложение NMEA типа '$ GPGGA' (данные исправления) или '$ GPRMC' (транзитные данные). Например: GeoNmea $ GPRMC, 081836, A, 3751,65, S, 14507,36, E, 000,0360,0, 130998,011,3, E * 62 Для получения информации о том, как подключиться к консоли эмулятора, см. Использование Консоль эмулятора.

...