gpt4 book ai didi

android-fragments - Google 在 AVD 上使用 4.3 SDK 18 映射 v2 灰屏

转载 作者:行者123 更新时间:2023-12-01 06:32:03 26 4
gpt4 key购买 nike

我为 android 的 google maps v2 创建了我的 google api key ,一切都在 eclipse 中为 google map 设置(使用 google+api 构建,链接到 google play 服务,api key 排序等),我可以在上面查看 map 应用程序我的手机,但是当我在 AVD 上查看同一个应用程序时,它会转到正确的位置,我可以看到所有的 google map 叠加层(例如缩放按钮),但没有 map ,它只是一个灰色框。网络也很好。

我使用的是最新的 4.3 API 18 版本,我的 AVD 是默认的 Nexus One。在此之前,我收到了可怕的“更新谷歌播放服务”消息,我发现这是由于 map v2 根本无法在 4.2 上工作,所以我升级了阅读 map 应该可以在 AVD 上与 SDK 18 一起工作。

知道为什么它不显示吗?我确实注意到当我启动 AVD 时它说使用软件 opengl 但我认为这没问题。

我已经阅读了各种 stackoverflow 文章,但它们都指向一个不正确的配置,我的配置很好,当我将它发送到我的手机时,它工作得很好,并且没有出现任何错误。

如果有任何帮助,这里有一些我正在使用的代码片段。

显现:

<uses-sdk android:minSdkVersion="9" android:targetSdkVersion="18" />
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-feature android:glEsVersion="0x00020000" android:required="true" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
<uses-library android:name="com.google.android.maps" />
<meta-data android:name="com.google.android.maps.v2.API_KEY"
android:value="XXXXXXXXXXXXXXXXXXXX"/>

布局片段:
<fragment
android:id="@+id/worldmap"
android:name="com.google.android.gms.maps.SupportMapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent" />

初始化 map 的代码:
private void initialiseMap() {
if (googleMap == null) {
googleMap = ((SupportMapFragment) getFragmentManager().findFragmentById(
R.id.worldmap)).getMap();

// check if map is created successfully or not
if (googleMap == null) {
Toast.makeText(activity.getApplicationContext(),
"Unable to create maps", Toast.LENGTH_SHORT)
.show();
}
}
}

显示 map 的代码:
private void displayLocation(Location l, String text) {
if(googleMap!=null) {
googleMap.setMapType(GoogleMap.MAP_TYPE_SATELLITE);
LatLng ll=new LatLng(l.getLatitude(), l.getLongitude());
CameraPosition cp=new CameraPosition.Builder()
.target(ll)
.zoom(18)
.build();

googleMap.animateCamera(CameraUpdateFactory.newCameraPosition(cp));
Toast.makeText(activity, l.getLatitude()+":"+l.getLongitude(), Toast.LENGTH_LONG).show();

}
}

最佳答案

你应该看到类似的东西

E/Google Maps Android API﹕ Google Maps Android API v2 only supports devices with OpenGL ES 2.0 and above

在控制台中。这是带有 Google API 的模拟器的已知问题。我建议切换到 Genymotion , 效果很好。

关于android-fragments - Google 在 AVD 上使用 4.3 SDK 18 映射 v2 灰屏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19229141/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com