人生必须的知识就是引人向光明方面的明灯。这篇文章主要讲述在Android中使用Google API密钥,但有限制相关的知识,希望能为你提供帮助。
创建Google Maps API密钥时,我们可以应用四个限制:-
- IP地址(Web服务器,cron作业等)。
- HTTP Referer(javascript)
- Andoid(对于SDK)
- ios(对于SDK)
问题出现,当我们想使用REST从移动设备(android / ios)访问某些API时,例如获取附近的位置以供用户输入。现在,哪种限制在这种情况下会起作用,以及如何处理呢?
我已经尝试了所有限制,但无法使用。
提前感谢。
答案在这种情况下,Android / Ios限制将起作用,然后将SHA放在所需的位置,然后在Android上以防万一,则将您的程序包名称放在此处。它将起作用,还可以从控制台启用您正在使用的api。
另一答案如果我的理解正确,您想通过移动应用程序使用Places API Web服务。通常,应该从后端服务器调用Google Maps API Web服务,并且它们仅支持IP地址限制。
我建议您看一下以下有关可以为不同API设置的限制的文章
https://developers.google.com/maps/faq#keysystem
如您所见,Places API Web服务只能使用IP地址限制。直接从移动设备发送Places API请求没有多大意义,因为每个设备都有自己的IP地址,并且您不知道用户设备的IP地址。因此,为了保护API密钥,唯一可行的解??决方法是创建中间后端服务器。
应用程序应将请求发送到您的中间服务器,中间后端服务器应将Google地方信息API请求发送到Google,且受保护的API密钥限制为您服务器的IP地址,并将代理结果返回给您的应用程序。
在这种情况下,您需要两个API密钥。一个用于具有Android应用限制的Google Maps Android SDK,另一个用于具有IP地址限制的Places API Web服务。
【在Android中使用Google API密钥,但有限制】我希望这会有所帮助!
推荐阅读
- Ionic 4 Leaflet Map不适用于部署,但适用于离子服务--devapp
- 无法控制.cloneNode()之后.appendChild()的位置
- 如何摆脱问题'二进制XML文件第8行(二进制XML文件第8行:使用XYPlot时会膨胀类com.androidplot.xy.XYPlot类])
- 颤动 - 接收通知时更改appbar图标
- 如何在visual studio解决方案中查看app.config或web.config中对键的所有引用/调用()
- 我无法在Visual Studio 2017中创建android密钥库
- 如何以编程方式从Android上的渐变中获取颜色列表
- 在C#winform app上运行时CRUD ConnectionStrings
- React App无法正确呈现