Usando o StageWebView.loadString () para exibir o Google Maps no AIR para iOS
Estou tentando usar umStageWebView
para exibir um mapa do Google Maps gerado usando a API Javascript. Existe uma razão pela qual ele não será renderizado no iOS? Funciona no Android e no simulador do AIR, mas não em dispositivos iOS. Eu também posso ver o HTML gerado no Safari, o que o torna ainda mais estranho.
Exemplo de HTML (estou gerando dinamicamente este aplicativo no aplicativo, não que isso seja importante):
<!DOCTYPE HTML>
<html style="width:100%; height:100%; margin: 0; padding: 0;">
<head>
<title></title>
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(e){
var myLatlng = new google.maps.LatLng( 0,0);
var mapOptions = {
zoom: 18,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.ROADMAP,
mapTypeControl: true,
zoomControl: true,
zoomControlOptions: {
style: google.maps.ZoomControlStyle.DEFAULT
}
}
var map = new google.maps.Map(document.getElementById("maps") , mapOptions);
geocoder = new google.maps.Geocoder();
geocoder.geocode( { "address": "90 South Kyrene, Chandler, AZ 85226" }, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
map.setCenter(results[0].geometry.location);
var marker = new google.maps.Marker({
map: map,
position: results[0].geometry.location
});
}
});
});
</script>
</head>
<body style="width:100%; height:100%; margin: 0; padding: 0;">
<div id="maps" style="width:100%; height:100%; margin: 0; padding: 0;"></div>
</body>
</html>
Estou carregando usandoStageWebView.loadString( html, "text/html" );
. Alguma idéia porque não renderiza? O carregamento de URLs parece funcionar (assim, tentarei salvar o HTML no disco e carregá-lo em vez disso, em seguida) bem, mas não em loadString.
Testado no iOS 6 e iOS 7 e no AIR 3.8 e 3.9
EDIT: Como acompanhamento, salvando o arquivo HTML em disco e, em seguida, o carregamento viaStageWebView.loadURL()
funciona muito bem. Ainda curioso porque carregá-lo vialoadString()
não funciona, no entanto.