Estoy tratando de encontrar mi ubicación actual para un proyecto de Android. Cuando se carga la aplicación, mi ubicación actual siempre es nula. Configuré los permisos en el manifiesto, etc. Cuando encuentro la ubicación actual, intento utilizar las coordenadas para buscar distancias a otras ubicaciones en el mapa. Mi fragmento de código está a continuación. ¿Por qué siempre obtengo un valor nulo?Mi ubicación actual siempre devuelve null. ¿Cómo puedo arreglar esto?
locMan = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
Criteria crit = new Criteria();
towers = locMan.getBestProvider(crit, false);
location = locMan.getLastKnownLocation(towers);
if (location != null) {
System.out.println("Location is not null!");
lat = (int) (location.getLatitude() *1E6);
longi = (int) (location.getLongitude() * 1E6);
GeoPoint ourLocation = new GeoPoint(lati, longi);
OverlayItem overlayItem = new OverlayItem(ourLocation, "1st String",
"2nd String");
CustomPinpoint custom = new CustomPinpoint(d, MainMap.this);
custom.insertPinpoint(overlayItem);
overlayList.add(custom);
overlayList.clear();
} else {
System.out.println("Location is null! " + towers);
Toast.makeText(MainMap.this, "Couldn't get provider",Toast.LENGTH_SHORT)
.show();
}
Intenta acceder a los mapas de Google directamente, no desde la aplicación. ¿Funciona? ¿Te localizo? después de que se localiza, ¿se ejecuta el código como se esperaba?¿Pruebas en dispositivo o emulador? –
Estoy probando en el emulador, estoy usando API nivel 15. No me localizará, siempre devuelve nulo. También intenté acceder a la aplicación google maps en el emulador, tampoco puedo encontrar la ubicación – devinefergal
que está usando de manera incorrecta, siga esto https://stackoverflow.com/a/48033659/4997704 –