【问题标题】:Maps Showing a Grid, no Maps Displayed显示网格的地图,不显示地图
【发布时间】:2011-12-02 03:51:24
【问题描述】:

我在标签中查看了地图,直到今天它都运行良好。请记住,自从我开始工作以来,我已经触及了地图视图中的任何代码。突然之间,地图视图上不再显示任何内容,只是地图网格。什么会导致这种情况?我尝试了一个新的 API 密钥,但它似乎不起作用。谷歌地图加载一切正常。我什至在其他手机上尝试过,仍然只是一个网格。

地图类

package com.nyneaxis.api.gascloud;

import com.google.android.maps.MapActivity;
import com.google.android.maps.MapView;

import android.os.Bundle;
import android.widget.LinearLayout;

public class StationsMap extends MapActivity  {

    LinearLayout linearLayout;
        MapView mapView;

    public void onCreate(Bundle savedInstanceState){

        mapView = (MapView) findViewById(R.id.mapview);
        mapView.setBuiltInZoomControls(true);
    }

    @Override
    protected boolean isRouteDisplayed() {
        // TODO Auto-generated method stub
        return false;
    }

}

maps.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/mainlayout"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >
            <com.google.android.maps.MapView
        android:id="@+id/mapview"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:clickable="true"
        android:apiKey="ABQIAAAAYc7mzgA4G-2FaBLUHTM_1xTjBItGPNb7O-Zq4IGUb6RxSdEi4RQ7Y-p4UARzkmuBTxknyrJRWOA31w"
    />

</RelativeLayout>

【问题讨论】:

  • 我认为你的 api 密钥是错误的。
  • 我只是比较了api密钥长度,你的api密钥太长了。我的 api 密钥是 0bBgLl42nWwnTf983Y5VdIgfZI6mC7meL7Ms_qg 。我只是猜测,
  • 尝试了不同的/新的 API,但仍然没有。只是一个简单的网格!这是 Google 为我生成的 API。
  • 再次尝试生成密钥使用 keytool -list -alias androiddebugkey -keystore "C:\Users\pc.android\debug.keystore" -storepass android -keypass android 你可以找到路径 "C :\...." 在 Eclipse 窗口->首选项->android->build.

标签: android google-maps maps


【解决方案1】:

在Application标签内的android-manifest文件中包含地图库

<uses-library android:name="com.google.android.maps" />

并授予 Internet 权限。如果您拥有正确的地图 API 密钥,那么除此之外似乎没有任何问题

【讨论】:

  • 密钥有效且正确。这些地图几天前正在显示,然后就停止了。我没有更改地图视图的代码。奇怪的是它就这样停止了工作。 Log Cat 的内容不多,只是说是回收地图对象。
  • 试试这个 添加你的 mapActivity.IF 它的显示错误然后删除 * 并重试
  • 它将停止回收地图对象。让我知道它是否有效
【解决方案2】:

你有 onCreate 这个吗,因为我没有在你的代码中看到它:

super.onCreate(savedInstanceState);
        setContentView(R.layout.mainlayout);

【讨论】:

    【解决方案3】:

    这是代码的问题。我用它来记录主类中的一些活动。在生成密钥库失败后,我终于开始深入研究代码并删除我认为可能是问题的代码位。删除所有东西后,我只剩下这个了。我评论了代码并且地图再次工作。我替换了所有原始代码并删除了 onResume。现在一切正常。

    感谢大家的帮助。谁能告诉我为什么这一点代码会阻止地图加载?这确实让我苦恼了一周。

        public void onResume(){
        super.onStart();
        Log.v(tag, "Task was resume");
    }
    

    【讨论】:

    • 可能是因为你在 onResume 中调用了 super.onStart()
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-11-30
    • 1970-01-01
    • 1970-01-01
    • 2020-12-08
    相关资源
    最近更新 更多