【问题标题】:Carthage and GoogleMap迦太基和谷歌地图
【发布时间】:2016-12-28 14:01:44
【问题描述】:

是否可以通过 Carthage 安装 GoogleMap SDK?

我只看到了 Cocoapods 的教程。

或者如果我使用 Carthage,我只能手动安装?

【问题讨论】:

    标签: ios xcode google-maps cocoapods carthage


    【解决方案1】:

    Carthage docs

    目前唯一支持的来源是 GitHub 存储库(GitHub.com 和 GitHub Enterprise)

    Carthage 实际上从它从指定存储库签出的源构建二进制框架。之后开发人员需要将此构建的二进制框架链接到项目。

    Google 已经为您提供了 GoogleMaps 框架的二进制版本,而不是共享源代码。因此,您只需从official website 下载此二进制文件并将其链接到您的项目,而无需使用 Carthage。所以你可以说谷歌已经为你完成了 Carthage 的工作,所以你不必使用 Carthage 来构建 GoogleMap 框架。而且我相信你甚至不能,因为 GoogleMaps 源代码没有开放。

    希望我的回答对你有所帮助。

    【讨论】:

    • Carthage 是依赖管理器,因此打包和构建并不是使用它的唯一原因。如果他们添加支持,它将帮助开发人员使所有依赖项保持最新。我认为谷歌已经开始了这项任务。 [链接] (issuetracker.google.com/issues/35827791)
    【解决方案2】:

    Carthage 支持直接链接到二进制资产。 如果您转到文档页面中的“手动集成”部分,您会注意到下载链接如下所示:

    https://dl.google.com/dl/cpdc/d308af63f78a5a1a/GoogleMaps-3.1.0.tar.gz
    

    所以你所要做的就是创建一个名为GoogleMaps.json 的本地 JSON 文件,并将以下内容放入其中:

    {
      "3.1.0" : "https://dl.google.com/dl/cpdc/d308af63f78a5a1a/GoogleMaps-3.1.0.tar.gz"
    }
    

    然后,在您的Cartfile 中,添加:

    binary "GoogleMaps.json" ~> 3.1.0

    瞧!

    【讨论】:

    • 不幸的是我遇到了一个问题,Unrecognized archive format 是我在 Cartfile 中使用 GoogleMaps.json 后收到的错误,因为 tar.gz fie 类型
    • 看起来 3.2 和 3.3 版本的文件压缩存在一些问题
    【解决方案3】:

    正要找出如何改进 Shai 的答案。你可以简单地添加

    binary "https://googlemaps.github.io/google-maps-ios-utils/GoogleMapsSDK-iOS.json" ~> 3.8.0

    进入您的购物车文件

    【讨论】:

      【解决方案4】:

      我使用 Leone Parise github repo 获取 google maps 2.7 https://github.com/leoneparise/GoogleMaps-Carthage

      他也有 Google Places 和 Google Place Picker,但不是最新的。如果您想使用这些,我已将它们上传到 2.7 版本: https://github.com/danitinez/GooglePlaces-Carthage 和这里 https://github.com/danitinez/GooglePlacePicker-Carthage

      干杯!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-01-04
        • 1970-01-01
        • 2017-07-07
        • 2020-07-07
        • 2018-03-31
        • 2018-04-27
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多