AIR和Google地图Javascript V3街景
我对AIR和Google地图Javascript V3街景,javascript,google-maps-api-3,air,google-street-view,Javascript,Google Maps Api 3,Air,Google Street View,我对SWF(由windows7adobeair运行时运行)和googlemapsjavascript V3嵌入到一个超级基本html页面中的SWF感到超级疯狂 SWF只需加载后者html并显示地图 在经典的2d地图中导航效果很好,但是当街景模式启动时,air会产生大量javascript错误。 由任何浏览器加载的相同的html,都可以完美地工作 我创建了一个超级简单的SWF作为概念证明。这是超最小的mxml源代码: <mx:WindowedApplication xmlns:mx=
SWF
(由windows7adobeair运行时运行)和googlemapsjavascript V3
嵌入到一个超级基本html
页面中的SWF感到超级疯狂
SWF
只需加载后者html
并显示地图
在经典的2d地图
中导航效果很好,但是当街景
模式启动时,air
会产生大量javascript错误。
由任何浏览器加载的相同的html
,都可以完美地工作
我创建了一个超级简单的SWF
作为概念证明。这是超最小的mxml
源代码:
<mx:WindowedApplication
xmlns:mx="http://www.adobe.com/2006/mxml"
creationComplete="init();"
>
<mx:UIComponent
id="bxMap"
width="100%" height="100%"
/>
<mx:Script>
<![CDATA[
private var _browser:HTMLLoader;
private var _sprite:Sprite;
private function init():void {
_browser = new HTMLLoader();
_browser.width = bxMap.width;
_browser.height = bxMap.height;
_sprite = new Sprite();
_browser.addEventListener(Event.COMPLETE, map_Ready);
_browser.load(new URLRequest("https://google-developers.appspot.com/maps/documentation/javascript/examples/full/map-simple?hl=it"));
}
private function map_Ready(event:Event):void {
_sprite.addChild(_browser);
bxMap.addChild(_sprite);
}
]]>
</mx:Script>
</mx:WindowedApplication>
知道为什么会发生这种情况以及如何消除它吗?
我试图将这种行为通知谷歌(at),但几分钟后就有人删除了我的问题。没有人告诉我为什么我的问题必须删除 不要使用HTMLLoader
。它很方便,但功能不全。相反,切换到StageWebView
,这是在空中显示大多数web内容的推荐方式。您将不得不处理它不在显示列表中,但我可以确认它工作正常。就在上周,我用它构建了一个GoogleMapsFlex组件,以支持移动设备上的GoogleMaps
HTMLLoader使用内置的AIR Webkit渲染引擎,该引擎不是一个非常完整的引擎,存在许多问题。另一方面,StageWebView使用系统浏览器(在OS X和iOS上的Safari,即在Windows上的Safari,在Android上的Chrome/浏览器)呈现内容,这通常要可靠得多
我可以确认,我的组件(实际上是动态生成包含Maps v3 API的HTML页面)和您提供的链接都可以在Android、OS X和iOS上使用StageWebView工作。我没有Windows电脑可供测试,但它也应该在那里工作。Josh,谢谢您的回复。我按照你的建议尝试了StageWebView,但没有任何改变。为了收集更多信息,我尝试将js警报放入测试页面,输出所用渲染引擎的版本。HTMLLoader和StageWebView(一个超级旧的webkit 533.19.4,Safari在2010年就使用过)也是一样的。也许AIR for iOS和Android使用的是更新版本的webkit。AIR for iOS和Android使用的是Safari和Chrome。AIR或OSX也使用Safari。我想我记得读到Adobe从使用IE改为使用内置的Windows Webkit,因为几年前IE是多么糟糕。不过,它在OSX上确实有效。不幸的是,我想你可能在这里运气不好。仅供参考,我在adobe bugbase上打开了一个功能请求。希望不久会有所改变。不管怎样,谢谢你的回复。我们能得到你的组件吗?@icemelt7对不起,我是为一个客户做的。无法释放代码。也就是说,它实际上只是一个StageWebView
,它通过一个字符串加载一个简单的Google Maps API v3页面,该字符串通过设置变量填充。除了让它随页面滚动之外,它没有任何逻辑可言(这是一个巨大的痛苦,但可行)
TypeError: Result of expression 'a' [undefined] is not an object.
Hu at : 2
at : 9
ag at https://maps.gstatic.com/intl/it_it/mapfiles/api-3/14/3/main.js : 25
at https://maps.gstatic.com/intl/it_it/mapfiles/api-3/14/3/main.js : 24
lC at : 13
at : 10
at https://maps.gstatic.com/intl/it_it/mapfiles/api-3/14/3/main.js : 9
at https://maps.gstatic.com/intl/it_it/mapfiles/api-3/14/3/main.js : 19
at https://maps.gstatic.com/intl/it_it/mapfiles/api-3/14/3/main.js : 21
at https://maps.gstatic.com/intl/it_it/mapfiles/api-3/14/3/main.js : 19
at https://maps.gstatic.com/intl/it_it/mapfiles/api-3/14/3/main.js : 21
at https://maps.gstatic.com/intl/it_it/mapfiles/api-3/14/3/main.js : 19
Fr at : 73
at : 72
at https://maps.gstatic.com/intl/it_it/mapfiles/api-3/14/3/main.js : 20