Dans mon application Android, j'utilise le cadre osmdroid. Dans le cadre, j'utilise MyLocationNewOverlay() qui contient une méthode pour montrer l'emplacement actuel sur la carte.Obtenir l'emplacement actuel avec le fournisseur de réseau sur osmdroid
Mon problème
Le LocationListener dans le cadre semble ne pas utiliser le fournisseur de réseau et ne veut me trouver avec le GPS (qui fonctionne très bien, mais seulement si je suis à l'extérieur).
Existe-t-il un moyen standard d'utiliser un LocationProvider qui fonctionne également avec le fournisseur de réseau si gps n'est pas disponible?
AndroidManifest.xml
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
assez standard init mon overlay emplacement:
private void initMyLocationNewOverlay() {
myLocationNewOverlay = new MyLocationNewOverlay(new GpsMyLocationProvider(context), mapView);
myLocationNewOverlay.enableMyLocation();
mapView.getOverlays().add(myLocationNewOverlay);
}
Merci à l'avance!
« nouvelle GpsMyLocationProvider » assez sûr que votre problème est –
Le problème est une classe nommée GpsMyLocationProvider est soit horriblement nommé, ou il utilise uniquement GPS. Recherchez un NetworkMyLocationProvider ou un WifiMyLocationProvider. Heck, regardez le code source - il ne fait qu'ajouter une seule source de données de localisation, et c'est GPS. –
Ah mec, comme c'est embarrassant: le problème était même dans le nom. Je ne pouvais tout simplement plus le voir. Merci! –