Application with Geolocation googleMaps

hey Ionics.

i’ve an application that runs GoogleMaps lib with geolocation. when i try on navigator. runs well. but when i try run with CLI emulating android or with application Ionic View on my phone. dont show the map. someone know whats happen?

the code:

angular.module('googleMap', ['ionic'])

 .controller('MapCtrl', function($scope, $ionicLoading, $compile) {
  
 aoChamar = function() {

          var nucleo = function(){ };

          var latitude
           ,  longitude
           ,  mapa
           ,  posicaoUsuario;

          nucleo.prototype.latitude = function(){
            return latitude;
          };

          nucleo.prototype.longitude = function(){
            return longitude;
          };

          nucleo.prototype.posicaoUsuario = function(){
            return posicaoUsuario;
          };

          nucleo.prototype.desenhaUsuario = function() {

             var janela = new google.maps.InfoWindow({
                 content: "<div>Voce está aqui</div>"
             });

             var usuarioP = new google.maps.Marker({
                 position: posicaoUsuario,
                 map: mapa,
                 title: 'Você'
             });

            google.maps.event.addListener(usuarioP, 'click', function() {
                janela.open(mapa, usuarioP);
            });                

          };

          nucleo.prototype.mapa = function(){
            return mapa;
          };

          nucleo.prototype.areaUsuario = function(){
            var circulo;
               var circuloOpcoes = {
                   strokeColor: '#FF0000',
                   strokeOpacity: 0.8,
                   strokeWeight: 2,
                   fillColor: '#FF0000',
                   fillOpacity: 0.35,
                   map: mapa,
                   center: posicaoUsuario,
                   radius: Math.sqrt(0.5) * 100
                };
              // Add the circle for this city to the map.
              circulo = new google.maps.Circle(circuloOpcoes);
          }



          navigator.geolocation.getCurrentPosition(function(pos) {

            latitude  = pos.coords.latitude;    //essa variavael ta local? pq?
            longitude = pos.coords.longitude;   //essa variavael ta local? pq?  
            posicaoUsuario = new google.maps.LatLng(latitude, longitude); 

            /*o googleMaps precisa dessa estrutura orrenda ai pra funcionar como paramentro. baitolagem danada. */
            var mapaOpcoes = {
               center: posicaoUsuario, //posição inicial do mapa
               zoom: 17, //zoom inicial do mapa
               mapTypeId: google.maps.MapTypeId.ROADMAP //tipo do mapa. não faço ideia como meche nisso aqui não.
            }

             mapa = new google.maps.Map(document.getElementById("map"), mapaOpcoes); 
             var x = new nucleo();
             console.log(x.latitude());
             console.log(x.longitude());   
             console.log(x.posicaoUsuario());
             x.desenhaUsuario();  
             x.areaUsuario();                    
          }, function error(err) {
               alert('ERROR(' + err.code + '): ' + err.message);
          })

 }

   $scope.centerOnMe = function(){
document.write("Bundão!!!!");
 }

     google.maps.event.addDomListener(window, 'load', aoChamar);
});  //fim do controller 'MapCtrl'