我正在尝试为Android 2.3.3设置一个基本的谷歌地图应用程序。我尝试在Eclipse、NetBeans和IntelliJ IDEA中进行开发。失败了太多次之后,我又回到了基础。请帮我完成我的API v1。
目前我的地图显示空白(模拟器和我的真实设备)。这是我的代码(顺便说一下,我尝试了所有可能的许可标签):
我用默认的调试密钥签名应用程序,即使我在发布中签名,我仍然得到空白地图。
我只想看一幅真正的地图。(顺便说一下,我不确定这里的文本格式是否正确,所以简而言之,我只是复制了代码1-1从这里mapview v1样本)
清单
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.hellogooglemaps"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk android:minSdkVersion="8"/>
<application android:label="@string/app_name">
<uses-library android:name="com.google.android.maps"/>
<activity android:name="MyActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
<uses-permission android:name="android.permission.INTERNET"/>
</manifest>
活动布局
<com.google.android.maps.MapView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/mapview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:clickable="true"
android:apiKey="BLA_BLA_BLA_GOT_A_KEY"
/>
的活动 package com.example.hellogooglemaps;
import android.os.Bundle;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapView;
public class MyActivity extends MapActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
MapView mapView = (MapView) findViewById(R.id.mapview);
mapView.setBuiltInZoomControls(true);
}
@Override
protected boolean isRouteDisplayed() {
return false;
}
}
如果您在default.keystore中使用MD5。
然后转到Windows>显示视图>其他>模拟器控件点击模拟器控件中的发送按钮(C坐标为十进制)
然后再次运行应用程序,地图应该出现一些默认的美国位置。
要在Device中获取Map,您需要从您的应用程序密钥库(而不是默认的密钥库)创建MD5。
谢谢。
这段代码看起来很适合Google Map API V1。所以你的钥匙一定有问题。对于我所知道的,如果它是一个新生成的关键然后谷歌不提供关键为谷歌地图API V1,所以它必须是一个关键为谷歌地图API V2,这就是它不工作的原因。
请尝试映射V2,生成后使用正确的映射键,并考虑以下事项:
- 网络许可。2 . 在开发者控制台中打开Android V2的Google地图。3.例如,在manifest中使用适当的标记下图:
<application android:label="@string/app_name" android:icon="@drawable/ic_launcher">
<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="xxx"/>
<activity android:name="MyActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
</application>