如何以编程方式更改PlaceAutocomplete api密钥

时间:2017-11-10 12:30:45

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

我正在使用PlaceAutocomplete搜索位置。现在我已经集成PlaceAutocomplete进行搜索,现在我通过此获取位置,现在我使用Google Places Api key在清单文件中设置<meta-date>

<meta-data android:name="com.google.android.geo.API_KEY"
     android:value="XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" />

以下是显示搜索屏幕的代码。

        try {
            Intent intent = new PlaceAutocomplete.IntentBuilder(PlaceAutocomplete.MODE_FULLSCREEN).build(this);
            startActivityForResult(intent, PLACE_AUTOCOMPLETE_REQUEST_CODE);
        } catch (GooglePlayServicesRepairableException e) {
            // TODO: Handle the error.
        } catch (GooglePlayServicesNotAvailableException e) {
            // TODO: Handle the error.
        }

现在,当我从服务器API响应中获取新的API密钥时,我想要更改Google Places Api key。那么是否可以使用代码更改API密钥?

3 个答案:

答案 0 :(得分:2)

不,现在无法以编程方式设置。

Google文档:

  

要使用Maps API V2访问Google Maps服务器,您必须这样做   将Maps API密钥添加到您的应用程序....将密钥添加到您的   通过向应用程序添加元素来应用程序   AndroidManifest.xml档案。

仔细阅读,通知非常明确,你无法使用其他东西而不是:

<meta-data
    android:name="com.google.android.maps.v2.API_KEY"
    android:value="YOUR_API_KEY"/>

如需更多说明,请阅读: Google Maps Android API v2

答案 1 :(得分:0)

不,您无法以编程方式更改<meta-data>。它只能在编译时设置。

答案 2 :(得分:0)

  

如何以编程方式更改PlaceAutocomplete API

无法以编程方式更改PlaceAutocomplete API

documentation suggest必须使用API文件分配Manifest密钥:

enter image description here

enter image description here

Get an API key from the Google API Console

中读取更多信息