2016-07-09 13 views
1

Ich habe Probleme mit der GPS-Erkennung über Google Maps in Ionic App. Wenn ich die App mit GPS starte und später von Settings auf GPS umschalte, klicke auf Find Me button - centerOnMe() Funktion - das GPS funktioniert nicht. Die Funktion Antworten immerWenn ich die App mit GPS aus starte, und später GPS aktiviert ist, wird der Standort nicht erkannt

Am Anfang dachte ich, das war ein Cache-Problem, aber ich habe herausgefunden, dass das nicht ist. Das Verwenden von $ state.reload in der Ansicht spielt keine Rolle. ¿Hat jemand das gleiche Problem? Danke für die Unterstützung. Ich lege die Funktion unten:

$scope.centerOnMe = function() { 

     $ionicPlatform.ready(function() { 
     console.log('Click on Find Me'); 

     if(!map) { 
      return; 
     } 

     $ionicLoading.show({ 
      content: 'Getting current location...', 
      showBackdrop: false 
     }); 

     //$state.reload('app.map'); 
     watchPositionId = navigator.geolocation.watchPosition(function(position) {      
       navigator.geolocation.clearWatch(watchPositionId); 
       var latitude  = position.coords.latitude; 
       var longitude = position.coords.longitude; 
       $scope.latitude = latitude; 
       $scope.longitude = longitude; 
       var geolocpoint = new google.maps.LatLng(latitude, longitude); 
       map.setCenter(geolocpoint);  
     }); 
     navigator.geolocation.getCurrentPosition(function (position) { 
        var lat = position.coords.latitude 
        var long = position.coords.longitude     
        $scope.center = new google.maps.LatLng(lat, long); 
        $ionicLoading.hide(); 
        console.log("GPS is enabled" + $scope.center); 
     }, function(err) { 
        // error 
        if (err.code == 1)  { console.log('GPS disabled! ERROR = '  + err.code); } 
        else if(err.code == 2) { console.log('GPS is unavailable! ERROR = ' + err.code); } 
        else if(err.code == 3) { console.log('Error: GPS Timeout! ERROR = ' + err.code); } 
        $ionicLoading.hide(); 
     }, { 
        enableHighAccuracy: true, timeout: 20000 
      } 
     ); 

     });  
    }; 

Antwort