我为我的公司开发了一个Android应用程序,我已经在片段中引入了一个地图。
该应用程序在我的手机上工作正常,但在将此应用程序提供给其他同事时,在他们的手机中地图未显示,它显示焦点按钮和Google徽标,但就是这样,没有地图。
布局
<fragment
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="10dp"
class="com.google.android.gms.maps.SupportMapFragment"/>
清单
<uses-feature
android:glEsVersion="0x00020000"
android:required="true"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<!-- The following two permissions are not required to use
Google Maps Android API v2, but are recommended. -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
...
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="AIzaSyArrfA3PQ9kVcwucUGZCoc9yMUC9wc2g_4"/>
片段
/*Try to obtain the map from the SupportMapFragment*/
mMap = ((SupportMapFragment) getActivity().getSupportFragmentManager().findFragmentById(R.id.map)).getMap();
答案 0 :(得分:2)
这是一个调试密钥问题。 你必须使用发布密钥。 使用版本2 API,您可以使用相同的密钥进行发布和调试。在你的谷歌api的控制台编辑你允许的Android应用程序,并在每一行放置你的调试/发布密钥,然后你的应用程序名称。您可以使用多行,然后它将适用于两个键。
答案 1 :(得分:0)
在Google Developer API控制台中
现在将此API密钥用于您的项目
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="@string/common_map_api_key"/>