Ich versuche meinen aktuellen Standort für ein Android-Projekt zu finden. Wenn die Anwendung geladen ist, ist mein aktueller Standort immer null. Ich habe die Berechtigungen im Manifest usw. eingerichtet. Wenn ich den aktuellen Standort finde, beabsichtige ich, die Koordinaten zu verwenden, um Entfernungen zu anderen Orten auf der Karte zu finden. Mein Codeausschnitt ist unten. Warum bekomme ich immer einen Nullwert?Mein aktueller Standort gibt immer null zurück. Wie kann ich das beheben?
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();
}
Versuchen Sie, Google Maps nicht direkt aus der App zuzugreifen. Funktioniert es - lokalisieren Sie? Nachdem der Code gefunden wurde, wird er wie erwartet ausgeführt.Testen Sie auf Gerät oder Emulator? –
Ich teste auf dem Emulator, ich benutze API-Ebene 15. Es wird mich nicht finden, gibt immer null zurück. Ich habe auch versucht, Google Maps-Anwendung auf dem Emulator zugreifen, es kann auch nicht finden Ort – devinefergal
Sie verwenden falsche Art und Weise folgen Sie diesem https://Stackoverflow.com/a/48033659/4997704 –