2011-12-10 75 views
1

我想在我的android应用程序上显示谷歌地图。节目我做一些基本的步骤是这样的:Android - 地图不能显示

AndroidManifest.xml中

<uses-permission android:name="android.permission.INTERNET" /> 

maps.xml

<view android:id="@+id/mv" 
     class="com.google.android.maps.MapView" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:layout_weight="1" 
     android:clickable="true" 
     android:apiKey="0cNoErXkpZDlKvCYr_OFj5xZD39-***********" 
    /> 

,这是5月的地图类,进口和onCreate方法

import com.google.android.maps.GeoPoint; 
import com.google.android.maps.MapActivity; 
import com.google.android.maps.MapController; 
import com.google.android.maps.MapView; 
import android.os.Bundle; 

方法地图上的onCreate()类

public void onCreate(Bundle savedInstanceState){ 
    super.onCreate(savedInstanceState); 
    requestWindowFeature(Window.FEATURE_NO_TITLE); 
    setContentView(R.layout.maps); 

    mapView = (MapView)findViewById(R.id.mv); 
    mapView.setSatellite(false); 
    mapView.setTraffic(false); 
    mapView.setBuiltInZoomControls(true); 

    int maxZoom = mapView.getMaxZoomLevel(); 
    int initZoom = maxZoom-2; 

    mapControl = mapView.getController(); 
    mapControl.setZoom(initZoom); 

    latE6 = (int) (lat*1e6); 
    lonE6 = (int) (lon*1e6); 
    gp = new GeoPoint(latE6, lonE6); 
    mapControl.animateTo(gp); 

    overlayButton = (Button)findViewById(R.id.doOverlay); 

但为什么我的地图上没有显示,我只看到网格地图内部消除,当我尝试阅读的logcat,我看到这个错误与黄色

Recycling dispatcher android_maps_conflict_a[email protected]40563470 

请帮助我。谢谢队友

回答

1

你确定你的API密钥正确吗?当API密钥不匹配时,它将显示网格而不是地图。

在模拟器上直接运行应用程序/实际的手机需要不同的密钥,然后在首先生成.apk文件并在设备上运行。

+3

我确定我的API密钥是正确的。我尝试请求新的API密钥,并设置为我的Android应用程序..但它仍然给网格视图> _ < – DevYudh

+0

你是直接从Eclipse运行应用程序,还是先导出它,然后将它作为apk安装在手机上?如果您从Eclipse运行它,请尝试构建它并将其安装到您的手机上。你的错误是一个典型的API关键问题。 –

+2

即时通讯我的笔记本电脑和我的Eclipse IDE直接运行我的应用程序。我没有导入/导出或运行在不同的设备上。 在我尝试编写该代码之前,我的地图显示为非常规,使用简单的地图。 然后我尝试重叠按钮并显示来自lat和lon的路线,然后我尝试在我的模拟器中运行。但是我看到的只是一个网格,没有像以前那样的地图。 @Sander感谢有必要讨论有助于@ _ @ – DevYudh

1

- 如果你有代理上网,你会得到网格。 - 使用默认调试密钥库来生成API密钥并尝试。