#android
#Android
Вопрос:
У меня возникла проблема с получением координат GPS в моем приложении для Android.
Когда я использую LocationManager.NETWORK_PROVIDER затем я получаю координаты GPS, но когда я использую gpsProvide =LocationManager.GPS_PROVIDER я не получаю координаты GPS.
Тогда что мне следует использовать LocationManager.NETWORK_PROVIDER или LocationManager.GPS_PROVIDER?
Может ли какой-либо орган помочь
Вот мой код:
public class GPSLocation implements LocationListener
{
private double latitude = 0.0;
private double longitude = 0.0;
private boolean gpsSupported;
LocationManager locationManager;
String gpsProvide;
public GPSLocation(LocationManager locManager)
{
gpsProvide=LocationManager.NETWORK_PROVIDER;
gpsProvide=LocationManager.GPS_PROVIDER;
locationManager = locManager;
locationManager.requestLocationUpdates(gpsProvide, 0, 0, this);
locationManager.getLastKnownLocation(gpsProvide);
}
public void onLocationChanged(Location location)
{
if (location != null)
{
this.latitude = location.getLatitude();
this.longitude = location.getLongitude();
System.out.println("Lat " latitude " Long " longitude);
this.gpsSupported = true;
}
else
{
this.gpsSupported = false;
}
}
public void getGPS()
{
Location location=null;
try{
location = locationManager.getLastKnownLocation(gpsProvide);
if (location != null)
{
this.latitude = location.getLatitude();
this.longitude = location.getLongitude();
System.out.println("Lat------------ " latitude " Long------------- " longitude);
this.gpsSupported = true;
Data.lat=location.getLatitude();
Data.lon=location.getLongitude();
}
else
{
this.gpsSupported = false;
}
}catch(Exception ex)
{
}
}
public void onProviderDisabled(String provider) {
// TODO Auto-generated method stub
}
public void onProviderEnabled(String provider) {
// TODO Auto-generated method stub
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
// TODO Auto-generated method stub
}
public double getLatitude()
{
return this.latitude;
}
public double getLongitude()
{
return this.longitude;
}
public boolean isGpsSupported()
{
return gpsSupported;
}
}
Комментарии:
1. вы используете его на телефоне или эмуляторе? какая-либо ошибка?
2. я использую его в телефоне. Не выдает ошибку, но получает нулевые значения.
3. всего пара вещей, поскольку вы используете его на телефоне, GPS не будет эффективно работать под крышей, поэтому попробуйте его снаружи….
4. ДА.. вы правы.. мне удалось это исправить…
5. итак, вы просто выносили телефон на улицу, и он работал????