2012-07-31 38 views
2

當我嘗試打開我的應用程序時,我收到了一張「空」地圖, 這意味着我沒有看到地圖,我可以看到放大和縮小按鈕,但沒有地圖。 請幫幫忙,這裏是我的代碼:Android Google地圖連接(不顯示地圖)

package com.example.hichride; 

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; 
import android.app.Activity; 
import android.view.Menu; 

public class MainActivity extends MapActivity { 


    MapController mControl; 
    GeoPoint GeoP; 
    MapView mapV; 


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

     mapV = (MapView) findViewById(R.id.mapView); 
     mapV.displayZoomControls(true); 
     mapV.setBuiltInZoomControls(true); 

     double lat = 40.8; 
     double longi = -96.666; 

     GeoP= new GeoPoint ((int) (lat * 1E6), (int)(longi * 1E6)); 

     mControl= mapV.getController(); 
     mControl.animateTo(GeoP); 
     mControl.setZoom(13); 


    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     getMenuInflater().inflate(R.menu.activity_main, menu); 
     return true; 
    } 

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

這裏是logCat日誌, 你可以看到有一個連接問題,我不知道如何解決它:

07-31 19:55:37.878: W/MapActivity(746): Recycling dispatcher android_maps_conflict_a[email protected]411fa278 
07-31 19:55:37.918: V/MapActivity(746): Recycling map object. 
07-31 19:55:38.178: I/MapActivity(746): Handling network change notification:CONNECTED 
07-31 19:55:38.188: E/MapActivity(746): Couldn't get connection factory client 
07-31 19:56:26.201: W/System.err(746): IOException processing: 26 
07-31 19:56:26.201: W/System.err(746): java.io.IOException: Server returned: 3 
07-31 19:56:26.208: W/System.err(746): at android_maps_conflict_avoidance.com.google.googlenav.map.BaseTileRequest.readResponseData(BaseTileRequest.java:115) 
07-31 19:56:26.208: W/System.err(746): at android_maps_conflict_avoidance.com.google.googlenav.map.MapService$MapTileRequest.readResponseData(MapService.java:1473) 
07-31 19:56:26.208: W/System.err(746): at android_maps_conflict_avoidance.com.google.googlenav.datarequest.DataRequestDispatcher.processDataRequest(DataRequestDispatcher.java:1117) 
07-31 19:56:26.208: W/System.err(746): at android_maps_conflict_avoidance.com.google.googlenav.datarequest.DataRequestDispatcher.serviceRequests(DataRequestDispatcher.java:994) 
07-31 19:56:26.208: W/System.err(746): at android_maps_conflict_avoidance.com.google.googlenav.datarequest.DataRequestDispatcher$DispatcherServer.run(DataRequestDispatcher.java:1702) 
07-31 19:56:26.208: W/System.err(746): at java.lang.Thread.run(Thread.java:856) 

回答

4

你在模擬器或手機上運行嗎?您是否在佈局文件中使用了正確的API密鑰?當您從Eclipse運行時需要一個密鑰,因爲它使用調試密鑰對應用程序進行簽名,因此當您將它部署爲使用密鑰簽署應用程序的apk時,您需要第二個密鑰。

+0

您確實需要指定您的API密鑰。看到這裏[Sign API Key](https://developers.google.com/android/maps-api-signup) – tolgap 2012-07-31 20:07:12

+0

我在模擬器中運行它,並且只有一個鍵,我應該使用另一個嗎? – user1464726 2012-07-31 20:07:48

+0

apiKey從哪裏來,哦,順便說一句,你永遠不應該發佈apiKey。請參閱tolgap的鏈接。 – Kaediil 2012-07-31 20:09:41