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'