2013-11-21 43 views
1

我可以放大和放大,也可以放置圖標標記,但問題在於地圖沒有出現,我只能看到是一個網格..這裏應該是什麼問題?這是否涉及Google Maps API?沒有出現Eclipse模擬器中的Google地圖

+0

它顯示了網格意味着你需要簽署你的應用程序然後運行。 – Vigbyor

+0

如何簽署我的應用程序?對不起,我還是一個初學者.. – myooomyoo

+0

它很容易訪問這個http://developer.android。com/tools/publishing/app-signing.html – Vigbyor

回答

0

在這裏看到: Running Google Maps v2 on the Android emulator

模擬器不喜歡谷歌地圖的V2。如果地圖保持灰色,則在真實設備上進行測試。 如果是這樣,您的簽名密鑰很可能會被錯誤配置。確保您還擁有開發在Google API控制檯上註冊的密鑰。

+0

好吧..會嘗試.. ..謝謝你.. – myooomyoo

0

嘗試添加的GOOLGE播放服務meta標籤..

<meta-data 
    android:name="com.google.android.gms.version" 
    android:value="@integer/google_play_services_version" /> 
+0

這將無法幫助模擬器 – meredrica

+0

我已經有了,但它仍然是一個網格出現..謝謝你.. – myooomyoo

+0

嘗試添加API密鑰,你將從谷歌API API .. –

1

我終於在我的模擬器中映射。我遵循這些步驟來實現它。

  1. 創建AVD並啓動模擬器

  2. 轉到平臺工具目前在Android SDK中的路徑,並把這些APK在它。

    • com.android.vending-20130716
    • com.google.android.gms-20130716
  3. 安裝這些apk文件的通過使用命令提示符(移將平臺工具路徑逐一+右鍵 - >打開此命令窗口)。遵循這些命令
    • ADB設備
    • ADB安裝com.android.vending-20130716
    • ADB安裝com.google.android.gms-20130716
  4. 導入谷歌播放,services_lib項目,該項目是目前在項目的位置,並把它添加到您的項目。
  5. 重新啓動模擬器並清理您的項目並通過模擬器運行它。

就是這樣。 :) 你可以從下面的鏈接下載上面的apk

Running Google Maps v2 on the Android emulator

enter image description here

+0

將更新爲一會兒..謝謝你.. – myooomyoo

+0

當你讓我知道了嗎? –

+0

我無法發佈照片..我有cmd的屏幕標題,你有Facebook嗎?我只會在Facebook上鍊接照片。 – myooomyoo

0

這是我的Android清單

<?xml version="1.0" encoding="utf-8"?> 

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.android.cmumap" 
    android:versionCode="1" 
    android:versionName="1.0"> 

<uses-sdk 
    android:minSdkVersion="8" 
    android:targetSdkVersion="15" /> 

<permission 
    android:name="com.android.cmumap.permission.MAPS_RECEIVE" 
    android:protectionLevel="signature" /> 

<uses-permission android:name="com.android.cmumap.permission.MAPS_RECEIVE" /> 
<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" /> 
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 

<application android:icon="@drawable/ic_launcher" android:label="@string/app_name"> 

    <activity android:name=".MainActivity" 
       android:label="@string/app_name"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 

    <meta-data 
    android:name="com.google.android.maps.v2.API_KEY" 
     android:value="my API key"/> 

    </activity> 

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

    <meta-data 
     android:name="com.google.android gms.version" 
     android:value="@integer/google_play_services_version"/> 

</application> 

</manifest> 

爲主要活動,我有這些

package com.android.cmumap; 

import java.util.List; 

import android.graphics.drawable.Drawable; 
import android.os.Bundle; 

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 com.google.android.maps.Overlay; 
import com.google.android.maps.OverlayItem; 

public class MainActivity extends MapActivity { 

private MapView mapView; 

private static final int latitudeE6 = 37985339; 
private static final int longitudeE6 = 23716735; 

@Override 
public void onCreate(Bundle savedInstanceState) { 

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

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

    List mapOverlays = mapView.getOverlays(); 
    Drawable drawable = this.getResources().getDrawable(R.drawable.ic_launcher); 
    CustomItemizedOverlay itemizedOverlay = 
     new CustomItemizedOverlay(drawable, this); 

    GeoPoint point = new GeoPoint(latitudeE6, longitudeE6); 
    OverlayItem overlayitem = 
     new OverlayItem(point, "Hello", "I'm in Athens, Greece!"); 

    itemizedOverlay.addOverlay(overlayitem); 
    mapOverlays.add(itemizedOverlay); 

    MapController mapController = mapView.getController(); 

    mapController.animateTo(point); 
    mapController.setZoom(6); 

} 

@Override 
protected boolean isRouteDisplayed() { 
    return false; 
} 

} 

和這個activity_main

<?xml version="1.0" encoding="utf-8"?> 

<RelativeLayout 
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 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/map_view" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:clickable="true" 
    android:enabled="true" 
    android:apiKey="my API Key" /> 

</RelativeLayout> 
相關問題