谷歌地图在模拟器中看起来是空的

时间:2012-01-20 23:47:04

标签: android map

public class Map extends MapActivity {

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.map);

    MapView mapView = (MapView) findViewById(R.id.myMapView1);

            mapView.getController().animateTo(srcGeoPoint);
    mapView.getController().setZoom(15);

}

map.xml

 <?xml version="1.0" encoding="utf-8"?> 
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
  > 
 <com.google.android.maps.MapView 
android:id="@+id/myMapView1" 
 android:layout_width="fill_parent" 
  android:layout_x="0px" 
  android:enabled="true" 
  android:clickable="true" 
 android:apiKey="Obtained Key here" android:layout_y="105px"             android:layout_height="fill_parent"> 
  </com.google.android.maps.MapView> 
 </LinearLayout>

我检查日志只有一个红色标记,无法找到com.google.settings的提供商信息。其他一切似乎没问题。我想知道为什么地图是空的?

3 个答案:

答案 0 :(得分:4)

当Maps API密钥过期或与您的调试签名密钥不匹配时,MapView为空。 尝试生成一个新的。

答案 1 :(得分:0)

  

在每个MapActivity中,都需要isRouteDisplayed()方法,   所以重写这个方法:

     

@Override protected boolean isRouteDisplayed(){       返回false; }

     

此方法是地图服务的某些会计所必需的   看看你目前是否正在显示任何路线信息。在这   你没有,所以回复假。

     

来源:http://developer.android.com/resources/tutorials/views/hello-mapview.html

android:layout_x="0px对我来说看起来有点狡猾。我认为它只在AbsoluteLayouts中使用,所以删除它不应该受到伤害。

答案 2 :(得分:0)

请检查日志是否“无法验证来自Google服务器的错误”。如果是,则映射密钥存在问题。 应在运行应用程序的同一系统上生成Map键。 同时检查您是否已启用Google Play帐户并启用了位置设置。

请点击此处了解更多详情: https://developers.google.com/maps/documentation/android/start