코드 아래에 현재 위치의 사용을 얻으려면, 이것을 시도.
public class MyLocationListener implements LocationListener {
public void onLocationChanged(Location loc) {
lati = loc.getLatitude();
longi = loc.getLongitude();
}
public void onProviderDisabled(String provider) {
}
public void onProviderEnabled(String provider) {
}
public void onStatusChanged(String provider, int status, Bundle extras) {
}
public MainActivity getLocationCordinates() {
MainActivity location_Gps = new MainActivity();
return location_Gps;
}
}
String location;
LocationManager mlocManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
if (mlocManager.isProviderEnabled(LocationManager.GPS_PROVIDER))
location = LocationManager.PASSIVE_PROVIDER;
else
location = LocationManager.GPS_PROVIDER;
LocationListener mlocListener = new MyLocationListener();
mlocManager.requestLocationUpdates(location, 0, 0, mlocListener);
mlocManager.requestLocationUpdates(location, 0, 1, mlocListener);
Location locate = mlocManager
.getLastKnownLocation(LocationManager.GPS_PROVIDER);
if (locate != null) {
lati = locate.getLatitude();
longi = locate.getLongitude();
} else {
locate = mlocManager
.getLastKnownLocation(LocationManager.PASSIVE_PROVIDER);
if (locate != null) {
lati = locate.getLatitude();
longi = locate.getLongitude();
}
}
MyLocationListener 클래스는 리스너를 구현하지 않은 당신의 manifest.xml
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
에 다음과 같은 권한을 추가합니다. 아무것도 반환되지 않았습니다. –
MuraliGanesan 대답을 참조하십시오. –
탑에 대해 무엇을 얻습니까? GPS 또는 네트워크? –