0
안드로이드 장치에서 위도와 경도를 얻는 데 문제가 있습니다.안드로이드 장치에서 위치를 가져 오는 문제가
내가 클래스 NewLocationActivity 생성자의 목적을 UpdateLocation 방법은 제가 잘 모릅니다 runs.Why하지 않는다는 것입니다 내 문제 나누었다 작품을 만드는public NewLocationActivity(final Context mContext) {
locationManager = (LocationManager) mContext
.getSystemService(Context.LOCATION_SERVICE);
locationListener = new LocationListener() {
public void onLocationChanged(Location location) {
updateLocation(location);
mSharedPreferences=mContext.getSharedPreferences(HomeSAFEPref.HomeSAFELocationPref,Context.MODE_PRIVATE);
SharedPreferences.Editor prefEditor=mSharedPreferences.edit();
String latitude=String.valueOf(currentLatitude);
String longitude=String.valueOf(currentLongitude);
String heading=String.valueOf(currentheading);
String horizAccuracy=String.valueOf(currenthorizAccuracy);
prefEditor.putString("Latitude", latitude);
prefEditor.putString("Longitude", longitude);
prefEditor.putString("Heading", heading);
prefEditor.putString("HorizAccuracy", horizAccuracy);
prefEditor.commit();
}
public void onStatusChanged(String provider, int status,
Bundle extras) {
}
public void onProviderEnabled(String provider) {
}
public void onProviderDisabled(String provider) {
}
};
locationManager.requestLocationUpdates(
LocationManager.NETWORK_PROVIDER, 0, 0, locationListener);
}
void updateLocation(Location location) {
currentLocation = location;
this. currentLatitude = currentLocation.getLatitude();
this. currentLongitude = currentLocation.getLongitude();
geoField=new GeomagneticField(
Double.valueOf(location.getLatitude()).floatValue(),
Double.valueOf(location.getLongitude()).floatValue(),
Double.valueOf(location.getAltitude()).floatValue(),
System.currentTimeMillis()
);
this.currentheading=geoField.getInclination();
this.currenthorizAccuracy=currentLocation.getAccuracy();
this.speed=(int) currentLocation.getSpeed();
}
...하지만 몇 번 -을 다음과 같이 내 코드를 보라 다른 장치에서는 완벽하게 실행되며 위도와 경도를 쉽게 얻을 수 있습니다. 왜 내가 왜 위도와 경도가 0,0인지를 알려주세요. 미리 감사드립니다.
같은 선언 http://www.androidhive.info/2012/07/android-gps-location-manager-tutorial/ – Ruban