Ubicación en proyecto jónico para android
En una aplicación Ionic simple tengo que conseguir la ubicación actual en el mapa. Funciona bien en el navegador cuando hago clic en buscarme, pero no funciona en el dispositivo Android actual.
Estoy usando el siguiente código
- Android - Google Map en + -180 de longitud y 90 de latitud
- ¿Cómo puedo usar un ajuste de TabHost que contenga un MapView que también muestre una vista de AdMob debajo de él?
- Fragmento de mapas de Google para Android en RecyclerView.ViewHolder
- MapActivity con StrictMode no funciona - Ayuda
- Cómo convertir un dibujable en un mapa de bits para cambiar el color de un marcador en Google Maps Android API v2
View.html
<ion-view view-title="{{navTitle}}"> <ion-content> <div id="map" data-tap-disabled="true"></div> </ion-content> <ion-footer-bar class="bar-stable"> <a ng-click="centerOnMe()" class="button button-icon icon ion-navigate">Find Me</a> </ion-footer-bar> </ion-view>
Controllers.js
.controller('googlemap', function($scope, $ionicLoading, $compile) { $scope.navTitle = 'Google Map'; $scope.$on('$ionicView.afterEnter', function(){ if ( angular.isDefined( $scope.map ) ) { google.maps.event.trigger($scope.map, 'resize'); } }); function initialize() { //var myLatlng = new google.maps.LatLng(43.07493,-89.381388); var myLatlng = new google.maps.LatLng(18.520430300000000000,73.856743699999920000); var mapOptions = { center: myLatlng, zoom: 16, mapTypeId: google.maps.MapTypeId.ROADMAP }; var map = new google.maps.Map(document.getElementById("map"), mapOptions); //Marker + infowindow + angularjs compiled ng-click var contentString = "<div><a ng-click='clickTest()'>Click me!</a></div>"; var compiled = $compile(contentString)($scope); var infowindow = new google.maps.InfoWindow({ content: compiled[0] }); var marker = new google.maps.Marker({ position: myLatlng, map: map, title: 'Pune(India)' }); google.maps.event.addListener(marker, 'click', function() { infowindow.open(map,marker); }); $scope.map = map; } initialize(); $scope.centerOnMe = function() { if(!$scope.map) { return; } $scope.loading = $ionicLoading.show({ content: 'Getting current location...', showBackdrop: false }); navigator.geolocation.getCurrentPosition(function(pos) { $scope.map.setCenter(new google.maps.LatLng(pos.coords.latitude, pos.coords.longitude)); $scope.loading.hide(); }, function(error) { alert('Unable to get location: ' + error.message); }); }; $scope.clickTest = function() { alert('Example of infowindow with ng-click') }; })
También en mi dispositivo en la localización del dispositivo pero todavía tengo problema. Conseguí siguiente salida en mi pantalla por mucho tiempo.
- Android: cómo volver a cargar marcadores personalizados una vez que la imagen se descarga a través de Picasso?
- ¿Cómo detectar constantemente las ubicaciones de los marcadores cercanos desde la ubicación actual en Google Maps android?
- Cómo dibujar un triángulo lleno en lienzo android?
- ¿Cómo abrir Google Maps con la dirección?
- Google Maps v2 que centra y que da vuelta a la posición de la cámara para caber dos marcadores
- Android: Google Map v2 no muestra mapa para la versión apk
- Migraciones de la versión 1 de Google Maps para la versión 2
- Invocación de Google Map Applications desde una aplicación de Android para obtener dirección dirving
¿No es más fácil usar el ngCordova $cordovaGeoLocationPlugin
? Puedes obtener la posición de este plugin (latitud y longitud) y luego pasar esto en GoogleAPI. Creo que será mucho más fácil de esa manera.
NgCordova geoLocationPlugin
Sólo una sugerencia.
Este ejemplo funciona perfecto si inicia la aplicación con GPS activado. Pero a partir de GPS en el dispositivo, y después de eso, entrar en la aplicación y la selección de GPS en, la función devuelve siempre el tiempo de espera GPS ERROR = 3. ¿Cualquier solución para eso?
He publicado este error aquí: Cuando inicio la aplicación con GPS desactivado, y más tarde el GPS está activado, la ubicación no se detecta
- Cordova: ¿Cómo escribir plugins nativos que pueden invocar repetidamente una devolución de llamada Javascript?
- Cómo manejar el error auth0 403 sin agregar código específico en todas partes (Retrofit / okhttp / RxAndroid)