Ven*_*nan 5 android google-maps android-mapview android-maps-v2
我的 Android 应用程序中有一个用例,我的应用程序的用户必须提供 API 密钥,以便他们可以使用地图。
但我发现我必须在清单文件中提供 API 密钥。我无法在运行时编辑它。
有没有其他方法可以动态地将地图 API 密钥提供给谷歌地图(我正在使用 MapView)或动态更改元数据值的任何方法
不幸的是,这似乎根本不可能。
https://developers.google.com/maps/documentation/android-sdk/get-api-key#add_key严格讨论清单以及如何将密钥添加到local.properties:
打开项目级别目录中的 local.properties,然后添加以下代码。将 YOUR_API_KEY 替换为您的 API 密钥。
MAPS_API_KEY=YOUR_API_KEY
然后从清单中引用它:
在 AndroidManifest.xml 文件中,转到 com.google.android.geo.API_KEY 并更新 android:value 属性,如下所示:
Run Code Online (Sandbox Code Playgroud)<meta-data android:name="com.google.android.geo.API_KEY" android:value="${MAPS_API_KEY}" />
显然,很久以前确实有一种在MapView手动实例化对象时注入密钥的方法(即不使用布局 xml):/sf/answers/821732761/
mMapView = new MapView(this, mapApiKey);
Run Code Online (Sandbox Code Playgroud)
但是,此构造函数已被删除,您无法再提供 API 密钥: https: //developers.google.com/maps/documentation/android-sdk/reference/com/google/android/libraries/maps/MapView ?hl= zh#public-constructor-summary
MapView(Context context)
MapView(Context context, AttributeSet attrs)
MapView(Context context, AttributeSet attrs, int defStyle)
MapView(Context context, GoogleMapOptions options)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2876 次 |
| 最近记录: |