【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
自己的代码里需要使用高德地图,所以直接查找对应的sdk。
话说高德地图的教程很详细,基本上给自己一种如果出问题就是自己智商出问题的感觉。照着官方教程一步一步的做下去,唯一略显困惑的就是sha1,因为我只找到debug.keystore,而申请key时有一个需要填入发布版的必选项,而我只有一个调试版呢。不知所以,就填成与debug相同的那个(这里还特意强调了二者不同)。
Key就这样申请了出来,我也不知道对与不对,更不知道这个界面里的*key名称*有任何卵用(至今看来是我没用上),修改Manifest,更换里面的key,添加permission,然后更改layout,在MainActivity里添上代码,一切看起来都是天衣无缝,编译通过,上传,运行,立即崩溃。
说了这些我貌似省略了一步,就是这个lib是从哪里来的。我最后用了两个小时终于找到原因,就是这个lib来源问题。
在从这里下载这个lib之时,我看到官方热情的提供了两种方法,一键下载和自定义。官方这么热情,我自然要选择自定义了。于是就潇洒的根据我的需要,搜索,导航?不需要,3d?用不着。好了,几百k的文件,几秒钟就下好了,名字呢,AMap2DMap_AMapLocation.zip,很拗口,却也很直白。
再下去就是理所当然的复制到libs文件夹下,恩,看似天衣无缝,漏洞就在这里:
官方的代码是针对3!d!地!图!的!
最后查找这里的文档,找到了有关资料。好的,按照说明,将import改成:
import com.amap.api.maps2d.*;
同样,在layout中改成
<com.amap.api.maps2d.MapView
android:id="@+id/map"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
</com.amap.api.maps2d.MapView>
感谢天,感谢地,感谢燥热的夏季!
来源:oschina
链接:https://my.oschina.net/u/79695/blog/708745