ios - Google Map API 方向键(iOS 应用程序)

标签 ios swift google-maps google-api

我想使用 google map api 来获取两个位置之间的路线。在我的 IOS 应用程序中。我尝试为项目创建公钥并在开发人员控制台中启用使用 API。但我收到此错误:此 ip 站点或移动应用程序未被授权使用此 api key IOS。出现此错误后,我尝试为(IP 地址(Web 服务器、cron 作业等))的 key 限制创建 API key 并设置我的 IP 地址,然后路由工作正常。但是当我一次又一次地从其他设备尝试这个时,我得到了这个错误。 我应该使用此 URL 进行路由:

let url = "https://maps.googleapis.com/maps/api/directions/json?origin=\(origin)&destination=\(destination)&mode=driving&key=APIKEY"

如何解决这个问题以在所有设备上运行我的代码。

最佳答案

您与 Google map 网络服务 (Directions API) 一起使用的 API key 支持 IP 限制,如以下文档中所述:

https://developers.google.com/maps/faq#using-google-maps-apis

问题是您无法知道安装了您的应用程序的所有设备的 IP 地址。

您有以下选择:

  1. 使用不受限制的 API key 。请注意,API key 需要 HTTPS 连接,因此 API key 不会从请求本身被拦截,因为请求已加密。因此,在这种情况下,您应该确保 API key 没有直接放在您的源代码中。如果你能从配置或环境中读取它,它可能是可行的。

  2. 创建一个中间服务器。您的 iOS 应用程序应向中间服务器发送请求,中间服务器应向 Google 发送请求并将响应传回您的应用程序。在这种情况下,您可以通过中间服务器的 IP 地址限制 API key 。

希望对您有所帮助!

关于ios - Google Map API 方向键(iOS 应用程序),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46731987/

相关文章:

ios - Swift - 以编程方式定位 UIButton 的问题(通用)

ios - 在 XMPP 框架中在后台发送本地通知

ios - 使用电子表格 Google Sheets API 创建新工作表

ios - 如何快速将灰度图像转换为二值图像?

ios - 在 Xcode 中调整图像大小?

ios - 在 Swift 4 中从计算变量创建关键路径

google-maps - 在 Powershell 中访问 Google map API

ios - iOS制作上拉View的方法(类似FourSquare)

android - 在 Android 中使用 Google Maps API 从用户位置获取附近地点的结果

ios - 如何使用自定义转场将 AVPlayer 从源 VC 传递到目标 VC?