地图三剑客

2020-03-01 23:10:35 +08:00
 winterbells

没干货,好久之前就想吐槽的,拖到现在都忘记要说什么了。。

因为项目原因 Google Map, Mapbox, Here Map 这三个地图都用过,特别是某项目,同时集成了这三个 TvT

Google Map

中年大叔
感觉好像很普通,但啥都懂,比较传统,没啥好说的感觉

Mapbox

是善变的
可能是我用的版本比较低,从 v0.10 开始的。后面几个版本升级都是一堆 deprecated 和各种删改。好好的接口,说没就没了。文档也不详细,还好需求比较简单,把 demo 里的东西改改就用了。v0.40 之后的版本好像没多大变化。

问为什么升级??当初有个 bug,放置一段时间有个 so 文件就报错了,要么程序 crash 了,要么就页面假死。官方在 issues 里表示知道了,但不改。。。

Here Map

用了想打人
嘴上说着什么吃的都有,但实际上要自己下厨,而且菜谱(文档)用的是方言写的

文档是我见过最差的了,有些个参数竟然搜不到。demo 也比较简陋,不如自己摸索。 办公室只要一说起 here map,就有一堆人过来吐槽。Android、iOS、web。。。

setImageResource(ResId) 要 try catch
不加个 delay 上一个操作会被下一个冲掉
还有各种奇奇怪怪的写法。。。

SDK 大小也是比较惊人,Lite SDK 大概 20M,premium SDK 大概 90M。(打成 aab 包下载时会小点,但还是很大了)

Here 的推广做的好像很足,特别是欧洲市场。也不知道客户着什么魔了,非要用这个(可他们要的实在太便宜了.jpg ?)


和操蛋的业务比起来 =。=

12552 次点击
所在节点    Android
22 条回复
sadfQED2
2020-03-02 00:21:27 +08:00
我也吐槽一个,Google map 前几天下线了 cn 域名,官方说切 google.com 域名即可,然鹅 com 域名必须翻墙使用,害我们线上所有项目地图全挂,然后加班加点把所有 google 换成百度了

另外,温馨提醒国内使用 google 地图的开发者,map.google.com 域名的地图和以前 map.google.cn 域名的地图对中国某些争议地区处理是不一致的,要谨慎使用
huyinjie
2020-03-02 01:21:38 +08:00
价格可以比较下吗
ericgui
2020-03-02 05:25:31 +08:00
mapbox 我在用,咋说呢,不太爽
omysho
2020-03-02 08:45:26 +08:00
Mapbox Android 加点什么定制化的东西要自己生成一个 Bitmap

然后还不得已做了个相关的缓存框架让它不要太卡
wolfan
2020-03-02 09:00:58 +08:00
@sadfQED2 听说泰国版天朝地图,西北两区是两个国家,不知真假?
winterbells
2020-03-02 09:20:47 +08:00
@sadfQED2 #1
1. mapbox 也有国内的,不过主域名也能访问。
2. 国外地图都这样,一般是看访问者位置,除非是中国特供版(你看 251 不也是)


@huyinjie #2 没比较过额,都是客户去买的


@ericgui #3 和 Google map 比较是有点不爽,但用也没太大问题。要是和 here map 比较就。。。


@omysho #4 只有几个 marker,没考虑过这个。况且根本没人在乎卡不卡(笑。相比于这,那堆 goushi 代码更需要优化
Torpedo
2020-03-02 10:16:49 +08:00
@sadfQED2 地图这个,肯定百度高德二选一。这东西就是拼数据
xiang578
2020-03-02 10:29:04 +08:00
之前遇到过 google map 坐地涨价
sadfQED2
2020-03-02 12:09:58 +08:00
@Torpedo 百度高德是国内,我们有国外用户
0000000000000000
2020-03-02 12:16:23 +08:00
Google Map 企图分裂国家,差评
winterbells
2020-03-02 16:34:46 +08:00
@Torpedo #7 能上谷歌的一般都是国外用户了 == 不然 gms 也用不了啊


@0000000000000000 #10 国内还隔三差五爆出用错地图呢,道个歉就完事了
Torpedo
2020-03-02 17:11:35 +08:00
@winterbells 难道你用了百度地图的国际版?
RickyC
2020-03-02 17:36:59 +08:00
百度地图, 高德地图, 腾讯地图
winterbells
2020-03-02 17:58:17 +08:00
@Torpedo #12 没听说过额,也没用过国内地图 SDK。。


@RickyC #13 高德好像有个什么甲级测绘资格。其它两家数据不知道哪来的
LicV587
2020-03-02 21:16:11 +08:00
@winterbells #14 百度也有甲级测绘资质,只是人家不会像阿里那样自卖自夸宣传而已
augustheart
2020-03-02 21:34:08 +08:00
@LicV587 三家都有测绘资格的
augustheart
2020-03-02 21:39:33 +08:00
@LicV587 2004 年 6 月,高德成为全国第一家获得导航电子地图甲级测绘资质的民营企业,并通过 ISO9001 认证。获得甲级测绘资质后,高德开始大规模采集数据,逐步构建了一个优质的数据库。
靠马云的小钱钱的功劳,手握高德的阿里吹吹这个还是有点资本的的……
omysho
2020-03-03 10:28:25 +08:00
@winterbells #6
很好奇,为什么「没人在乎卡不卡」

我这几百个 marker,就是几百张图,用户划来划去,然后不停的实时创建一大堆 Bitmap

最后没办法,做了个缓存机制。

本来如果它自己提供绘制方法,根本就没必要这样子做,然而它复杂一点的 Marker 就只能实时生成一张图
winterbells
2020-03-03 11:04:57 +08:00
@omysho #18 我当时刚进项目的时候,对着代码沉思了好久,憋了半天也没看懂。自己跑一遍,从启动页面到 home 页面给我的感觉就是卡,这™还是人用的吗!单例保存的变量都是从本地读写的,虽然在内存里也保存了一遍。下拉菜单是个 activity。处理推送的也是启动 activity,透明的。各种控件都是组合在一起的(很多地方都至少嵌套两层),每个控件都有一个 resetView,每个子控件都由 5 个变量控制状态(不控制入口,而是单独判断!),还有网络返回的数据处理都在主线程,各种循环,各种存。其它乱七八糟就不说了。

加 heremap 的时候,iOS 那边说之前写的矬,这块新写。结果这货听到了跑过来让我还是按之前的写,保持狗屁的风格一致。我说之前逻辑太深了,效率低,她说卡就卡点,把锅甩给地图就好了!
bclerdx
2020-03-04 07:36:33 +08:00
@sadfQED2 你非要帅锅给谷歌,哎~

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/648968

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX