android - GoogleMap onMapReady 触发良好,但未在应用程序上显示
问题描述
我有 api 密钥,我认为我编码得很好,但没有显示......
在应用程序上,谷歌地图片段如下所示 https://imgur.com/3XtZBgw
在 Java 文件上
public static GoogleMap map;
onCreate(){
...
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
.findFragmentById(R.id.maps);
mapFragment.getMapAsync(this);
//and it fires overrided onMapReady function
}
@Override
public void onMapReady(final GoogleMap googleMap) {
Log.e("dialog","on map ready");
Log.e("dialog",googleMap.toString());
map = googleMap;
map.setOnMarkerClickListener(this);
map.setOnMapClickListener(new GoogleMap.OnMapClickListener() {
@Override
public void onMapClick(LatLng arg0) {
Log.e("dialog","map clicked"+arg0.toString());
}
});
}
在 main.xml 上
<fragment
android:id="@+id/maps"
android:name="com.google.android.gms.maps.SupportMapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentBottom="true"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_gravity="center_horizontal|top" />
解决方案
有以下地图不工作的可能性,请验证并检查它,
- 如果您的 API 密钥已通过验证,则验证您的 SHA 密钥并在凭证部分添加最新密钥打开密钥部分
- 验证您在
AndroidManifest.xml
文件中添加了 map api 密钥,如下所示<meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="Your API KEY" />
- 验证是
Map SDK for Android Enabled
与否 同样在验证了上述所有步骤之后,也无法正常工作。
请尝试重新安装您的应用程序。
推荐阅读
- c++ - 获取当前linux进程的内存地址
- mysql - 对两个关系表执行 UPDATE
- java - 月球绕地球旋转JAVA
- python - 如何使用输入来执行外部操作?
- asp.net-mvc - MVC 持久化路由数据值
- javascript - 迁移到 TypeScript,__dirname 设置为 dist 文件夹
- python - 如何在我使用 seaborn 创建的散点图上添加一个圆圈
- c - c中的静态查找表,用于分配值的枚举
- javascript - 我正在尝试使用他们的 ID 从公会中获取成员,但现在我使用的变量返回未定义
- google-apps-script - 从多个 Google 表格中删除特定数据