android - 在 Android 中使用有限制的 Google API Key
问题描述
在创建 Google Maps API 密钥时,我们可以应用四个限制:-
- IP 地址(Web 服务器、cron 作业等)。
- HTTP 引用 (Javascript)
- 安卓 (SDK)
- ios (SDK)
现在,如果我们使用它们各自位置的钥匙,一切正常。
当我们想使用 REST 从移动设备(android/ios)访问一些 API 以获取附近的位置以供用户输入时,问题就出现了。现在在这种情况下哪种限制会起作用以及如何处理?
我已经尝试了所有的限制,它不会工作。
提前致谢。
解决方案
您可以通过在 https 调用的标头中传递 android 包名称和 sha-1 来限制 Android 应用程序的密钥并在我的应用程序中进行 http REST 调用:
"X-Android-Package": "your.androidpackage.id"
"X-Android-Cert": "0000000000000000000000000000000000000000"
*请务必删除 sha 中的冒号 ':'。
您仍然需要将“密钥”作为 url 参数传递和公开,但如果标头中没有凭据,它将被阻止。
推荐阅读
- google-app-engine - Google Cloud Platform 上的双向 TLS 身份验证
- opencv - 在视频流上叠加 FEA
- git - 关于如何为不同的人安排不同的代码格式的工具或想法
- reactjs - 如何正确重构反应钩子嵌套函数
- android - Android Fragment Manipulation
- angular - 如何将在 TypeScript 中定义为字符串的 Angular 模板解析为具有正确绑定的有效 HTML
- reactjs - Rendering different component inside a component in React
- python - How to add a text-field-placeholder using WTForms-Alchemy
- angular - Delay the route canActivate method call till backend service return result in angular 7
- javascript - 将项目符号添加到多个文本区域和隐藏的文本区域