在过去的几天里,我一直无法使用简单的MapView进行工作,没有覆盖层,只有地图。我查找了很多解决方案,但没有一个对我有用。
我有一个用于调试密钥库的apikey。我在清单文件中的适当位置拥有所有适当的权限,但是我仍然遇到相同的错误和相同的灰色网格。我的代码中缺少什么吗?我不知道怎么了,请帮忙!
这是mapactivity的布局xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<com.google.android.maps.MapView
android:id="@+id/mapview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:enabled="true"
android:clickable="true"
android:apiKey="xxxx" />
</LinearLayout>
这是mapactivity代码:
public class MapActivity extends com.google.android.maps.MapActivity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.map_view);
}
@Override
protected boolean isRouteDisplayed() {
return false;
}
}
这是我的清单文件:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="xxxx"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="15" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" android:debuggable="true">
<uses-library android:name="com.google.android.maps" />
.
.
.
.
<activity android:name="MapActivity"></activity>
</application>
</manifest>
最佳答案
通过使用SHA1证书指纹,我遇到了同样的问题,因此我选择了MD5证书指纹。转到此站点https://developers.google.com/maps/documentation/android/v1/maps-api-signup,并给您MD5指纹并获取密钥。
获取MD5指纹
在运行中键入cmd,打开命令提示符。开始⇒运行⇒输入cmd
通过输入cd c:\ jdk-dir \ bin \进入jdk的bin目录
在我的情况下,我输入cd C:\ Program Files \ Java \ jdk1.7.0_07 \ bin \
然后输入keytool -exportcert -alias androiddebugkey -keystore
“ C:\ Users \用户名.android \ debug.keystore”-列表-v
在我的情况下,我键入了keytool -exportcert -alias androiddebugkey -keystore“ C:\ Users \ User.android \ debug.keystore” -list -v
然后将要求您输入密码。默认密码是android。
那么您将获得MD5指纹。