2016-04-22 12 views
-2

我有API密鑰,但仍然無法在我的項目中打開Goog​​le地圖。我的要求是我必須在我的應用程序中使用谷歌地圖獲取當前位置和附近的醫院詳細信息,並且我希望距離該地點附近的醫院列表按照增加的順序排列。在點擊我的醫院之後,我們可以顯示從當前位置到特定醫院的可導航路徑。請在下面找到UI部分enter image description here請幫助我。無法使用谷歌地圖地圖事件雖然我得到了API密鑰

+0

讓我們瞭解您已經試過你的代碼和堆棧跟蹤(如有)。 –

回答

0

首先讓我問你,你到現在爲止做了什麼?因爲根據你的編碼,任何開發者都可以推薦你。任何如何,請關注這個..

定義XML諸如此類

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" > 


    <fragment 
     android:id="@+id/map" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     class="com.google.android.gms.maps.SupportMapFragment" /> 

</RelativeLayout> 

初始化你谷歌地圖在MainActivity

public class MainActivity extends Activity { 

private GoogleMap googleMap; 

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

    try { 
     initilizeMap(); 

    } catch (Exception e) { 
     e.printStackTrace(); 
    } 

} 

private void initilizeMap() { 
    if (googleMap == null) { 
     googleMap = ((MapFragment) getFragmentManager().findFragmentById(
       R.id.map)).getMap(); 

     if (googleMap == null) { 
      Toast.makeText(getApplicationContext(), 
        "Sorry! unable to create maps", Toast.LENGTH_SHORT) 
        .show(); 
     } 
    } 
} 

@Override 
protected void onResume() { 
    super.onResume(); 
    initilizeMap(); 
} 

}

也是最重要的定義您的Manifest文件具有所有權限

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="packagename" 
android:versionCode="1" 
android:versionName="1.0" > 

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

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

<uses-sdk 
    android:minSdkVersion="16" 
    android:targetSdkVersion="23" /> 

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

<!-- Required OpenGL ES 2.0. for Maps V2 --> 
<uses-feature 
    android:glEsVersion="0x00020000" 
    android:required="true" /> 

<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name"> 
    <activity 
     android:name="packagename.MainActivity" 
     android:label="@string/app_name" 
     android:theme="@style/AppBaseTheme" 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 

    <!-- Goolge API Key --> 
    <meta-data 
     android:name="com.google.android.maps.v2.API_KEY" 
     android:value="AIzaSyBZMlkOv4sj-M5JO9p6wksdax4TEjDVLgo" /> 
</application> 

+0

也將這些添加到您的清單中標記 kitkat