高版本模拟器(Android 8.0)运行地图出现嫼屏缩放按钮及LOGO正常显示,LOGCAT会输出如下日志
高版本模拟器(Android 8.0)对SO HEADER部分进行检查这与高德logo对模拟器SO的压缩方案有冲突;(真机没有问题)
如果去除压缩x86平台包体积会增加到11M,为了满足大部分用户对包体积的要求官网中为已压缩版本;
(2)如果您对模拟器有强烈需求,请通过以下地址
获取未压缩版本的模拟器so;
private AMap aMap;代码接着,找到该对象调用的位置找到了该对象调用的getMap()方法之后:
网上关于高德logo的文章并不多不知道是大家平时遇到的问题少,还是都水平太高这里只是记录下自己当初做地图的时候遇到的一些小问题以及解决的历程
产品需求: 我們的用户允许自己输入一个地址,输入的这个地址需要在地图上做一个标记如下设计图
简书-地址标记.png
这个倒也简单,筛选了下选择高德logo地图,作为我们的第三方地图服务下载SDK,研究接口,cocoapods引入定义坐标点,绘制图层好的一气呵成
拿去信心满满的给产品看,嗯嗯产品经理很满意
自己测试了下,也没什么问题ok,移交测试
测试测试结束反馈- 有crash
开始查,简单过了代码好像没有大的问题,然后查crash堆栈但是这个查出来,好像不是我的代码问题是高德logo的问题
好,我们来细数高德logo地图有哪些问题
这个是高德logosdk的crash在初始化map view的时候,高德logo会仩传StatisticsInfo(统计log)但是如果高德logo的key(我们的APP在高德logo注册的key)为空的情况下,会crash.
这个不影响我们的app因为正常情况我们的key是存在的,发现该问題是在调试时使用临时证书没有高德logokey时才出现的
这个具体是高德logo哪里的问题没有查出来,应该是绘制地图的时候的问题.
这个感谢instruments很清晰的看出来,其他页面都正常一进入地图就哗哗的往上涨
因为我进入地图后,会根据经纬度重新载入位置这个需要一定的时间
但是在這个时间,如果用户选择退出页面那么会很高概率发生crash
易出现系统:在iOS7上高概率,iOS8频率较低iOS9就很少出现了(当然iOS9很多是6s或者6P,内存撑得住,所以能hold住)
如果是因为载入慢那么我就让用户在载入这个过程中不要退出
关于内存的问题 ,因为我是每次进入地图的时候都会new一個mapview出来,这样如果进进出出,进进出出CPU就跟火箭似的的,擦擦网上跑
查了很多高德logo的社区论坛和官方文档
后来从高德logo某个回答的提醒下,想到用单例
之前一直没用是因为想到,地图本身不是一个高频的东西没必要用单例
而且是处于对高德logo地图的高度信任
但是现在僦结果来看,高德logo在内存方面做得并不好而且代码存着各种问题
最终决定用单例实现mapview
polen: 这个也是多次生成改为公用一个的模式(相当于单唎了)
polen: 很久之前的问题了,但是论坛里没说出有太建设性的意见...