如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
在百度HI的flash群里不少朋友都说air做百度地图,坐标系转换API不能用,allowDomain("*");那报错,经过楼主一番研究,发现那确实有点麻烦。不过,俗话说地好:“他山之石可以攻玉”。这篇帖子里的解决方案是来自JavaScript的。一切灵感来自于这个地址:http://api.map.baidu.com/ag/coor....254615&y=29.814476这个是JavaScript转换用的方法,它会返回一个json对象,里面包含了用Base64加密的坐标信息。于是解决方法就出来了。在AS3里,用post这个地址,把返回的数据拿出来,取出坐标的那部分,进行Base64解密。关于转换过程我已经封装好,弄了个swc,需要的朋友到附件里下载一下,然后,用的时候导入一下就行。下面我给个例子:package{importflash.display.MovieClip;importxtygah14three.Utils.*;//导入一下这个包publicclassconverTestextendsMovieClip{publicfunctionconverTest(){varcv:myConvertor=newmyConvertor();//实例化一个转换类出来cv.conver(116.254615,29.814476,ok);//conver是它的一个方法}privatefunctionok(v1,v2){trace(v1);//116.2610991221trace(v2)//29.820560874846}}}复制代码游客,如果您要查看本帖隐藏内容请回复2013年3月26更新:最近有朋友说参照我这个方法有误差。我测试过确实有,具体是什么问题我也没有深入研究。现在有一个解决方案,也是过年的时候一个朋友他们实现了的,源码现在已经找不到了。我把实现思路跟大家说一下:1、同样还是用JavaScript的转换方法。百度地图的JavaScriptAPI官方有好多个demo,可以看到源码,有一个是用于转换坐标的,我们就用那段js代码和AS进行交互就可以了。2、因为是手机,所以是用不了HtmlLoader的。但是有一个替代品--StageWebView。但是我们需要js内容与as交互,而StageWebView实现不了,所以这里用到了一个老外写的东西,名字叫StageWebViewBrige,3、然后,实现过程就是这样的,手机用StageWebViewBrige模拟一个浏览器(不用显示出来),这个浏览器加载百度地图转换坐标那段js代码。AS把得到的坐标数据传入js,js转换完后传给(其实也就是回调)AS用。