在Android上安全地使用Google Places API Web服务的浏览器密钥

时间:2017-06-24 21:12:13

标签: android google-maps google-places-api google-maps-android-api-2

我通过将PlaceAutocompleteFragment嵌入到我的活动中来使用Google Places API for Android Autocomplete Widget。这可以正常工作,但由于小部件的性能以及缺少 radius 过滤器而在我的实现中存在一些缺点,这些过滤器在完整Google Places API Web Service中可用。

我想开始关闭 Google Places API for Android 并使用 Google Places API网络服务来访问更广泛的过滤选项。但是,文档说明了以下内容:

  

注意:Google Places API网络服务无法使用Android或iOS限制的API密钥。

这意味着,我认为我必须在我的应用程序中使用浏览器或服务器限制的API密钥,但在Android上,我理解这些选项不太理想,因为它可以窃取API密钥。 / p>

如何在Android应用程序中安全地使用浏览器API密钥?

1 个答案:

答案 0 :(得分:1)

应该从后端服务器调用Web服务。 Web服务的API密钥支持IP地址限制。因此,为了保护您将要用于Web服务请求的API密钥,您应该创建一个中间服务器,该服务器将向Google发送请求并将响应传递回您的Android应用程序。要保护API密钥,您应该使用中间服务器的IP地址。