2016-04-22 10 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