V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
winterbells
V2EX  ›  Android

地图三剑客

  •  
  •   winterbells · 2020-03-01 23:10:35 +08:00 · 11640 次点击
    这是一个创建于 1712 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

    因为项目原因 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 ?)


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

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

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

    然后还不得已做了个相关的缓存框架让它不要太卡
    wolfan
        5
    wolfan  
       2020-03-02 09:00:58 +08:00
    @sadfQED2 听说泰国版天朝地图,西北两区是两个国家,不知真假?
    winterbells
        6
    winterbells  
    OP
       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
        7
    Torpedo  
       2020-03-02 10:16:49 +08:00
    @sadfQED2 地图这个,肯定百度高德二选一。这东西就是拼数据
    xiang578
        8
    xiang578  
       2020-03-02 10:29:04 +08:00
    之前遇到过 google map 坐地涨价
    sadfQED2
        9
    sadfQED2  
       2020-03-02 12:09:58 +08:00 via Android
    @Torpedo 百度高德是国内,我们有国外用户
    0000000000000000
        10
    0000000000000000  
       2020-03-02 12:16:23 +08:00 via iPad
    Google Map 企图分裂国家,差评
    winterbells
        11
    winterbells  
    OP
       2020-03-02 16:34:46 +08:00
    @Torpedo #7 能上谷歌的一般都是国外用户了 == 不然 gms 也用不了啊


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


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

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

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

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

    加 heremap 的时候,iOS 那边说之前写的矬,这块新写。结果这货听到了跑过来让我还是按之前的写,保持狗屁的风格一致。我说之前逻辑太深了,效率低,她说卡就卡点,把锅甩给地图就好了!
    bclerdx
        20
    bclerdx  
       2020-03-04 07:36:33 +08:00 via Android
    @sadfQED2 你非要帅锅给谷歌,哎~
    happyhou
        21
    happyhou  
       2021-04-27 19:10:26 +08:00
    在移动端 geojson 格式,没有支持。差评
    winterbells
        22
    winterbells  
    OP
       2021-04-27 21:17:26 +08:00
    @happyhou #21 mapbox 和 google 都是支持的呀
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5368 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 07:00 · PVG 15:00 · LAX 23:00 · JFK 02:00
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.