2014-06-26 135 views
0

我正在设计这个涉及使用谷歌地图的Android应用程序。我已经从Google获得我的API_KEY并将其插入到我的清单文件中。但是当我运行该应用程序时,我得到的只是一个错误。下面是我的清单文件,也是logcat的错误:谷歌地图错误

的Manifest.xml

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

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

    <!-- Permissions --> 
    <permission 
     android:name="com.src.apps.myekoapp.permission.MAPS_RECEIVE" 
     android:protectionLevel="signature" /> 

    <uses-permission android:name="com.src.apps.myekoapp.permission.MAPS_RECEIVE" /> 
    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
    <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" /> 

    <uses-feature 
     android:glEsVersion="0x00020000" 
     android:required="true" /> 

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

    <application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 
     <activity 
      android:name="com.src.apps.myekoapp.SplashActivity" 
      android:label="@string/app_name" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <activity android:name=".MainActivity" /> 
     <activity android:name=".RSSList" /> 
     <activity android:name=".DetailsFragment" /> 
     <activity android:name=".EkoMap" /> 
     <activity android:name=".CallLASMA" /> 

     <meta-data 
      android:name="com.google.android.maps.v2.API_KEY" 
      android:value="My API_KEY here" /> 
    </application> 

</manifest> 

logcat的错误:

06-26 16:14:16.570: E/AndroidRuntime(369): Caused by: java.lang.IllegalStateException: The meta-data tag in your app's AndroidManifest.xml does not have the right value. Expected 4452000 but found 0. You must have the following declaration within the <application> element:  <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> 

06-26 16:14:16.570: E/AndroidRuntime(369): at com.google.android.gms.common.GooglePlayServicesUtil.t(Unknown Source) 

06-26 16:14:16.570: E/AndroidRuntime(369): at com.google.android.gms.common.GooglePlayServicesUtil.isGooglePlayServicesAvailable(Unknown Source) 

06-26 16:14:16.570: E/AndroidRuntime(369): at com.google.android.gms.maps.internal.u.B(Unknown Source) 

06-26 16:14:16.570: E/AndroidRuntime(369): at com.google.android.gms.maps.internal.u.A(Unknown Source) 

06-26 16:14:16.570: E/AndroidRuntime(369): at com.google.android.gms.maps.MapsInitializer.initialize(Unknown Source) 

06-26 16:14:16.570: E/AndroidRuntime(369): at com.google.android.gms.maps.MapFragment$b.ip(Unknown Source) 

06-26 16:14:16.570: E/AndroidRuntime(369): at com.google.android.gms.maps.MapFragment$b.a(Unknown Source) 

06-26 16:14:16.570: E/AndroidRuntime(369): at com.google.android.gms.dynamic.a.a(Unknown Source) 

06-26 16:14:16.570: E/AndroidRuntime(369): at com.google.android.gms.dynamic.a.onCreate(Unknown Source) 

06-26 16:14:16.570: E/AndroidRuntime(369): at com.google.android.gms.maps.MapFragment.onCreate(Unknown Source) 

06-26 16:14:16.570: E/AndroidRuntime(369): at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:697) 

06-26 16:14:16.570: E/AndroidRuntime(369): at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:900) 

06-26 16:14:16.570: E/AndroidRuntime(369): at android.app.FragmentManagerImpl.addFragment(FragmentManager.java:978) 

06-26 16:14:16.570: E/AndroidRuntime(369): at android.app.Activity.onCreateView(Activity.java:4090) 

06-26 16:14:16.570: E/AndroidRuntime(369): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:664) 

06-26 16:14:16.570: E/AndroidRuntime(369): ... 19 more 

06-26 16:14:53.350: I/Process(369): Sending signal. PID: 369 SIG: 9 

请我在哪里出了错?我看过这么多的教程,并按照他们的步骤,但他们的工作时得到这个错误。

回答

0

您需要直接放置您的API密钥,而不是对值文件夹的引用。

+0

我该怎么做呢? – Andrecon

+0

0

您必须在您的清单文件添加此:

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

ok。你是说我应该删除我写在那里的元数据,只是写下你写的内容,因为我有点困惑。 – Andrecon

+0

只是添加这个元标记,并且不要删除另一个,这两个都应该包括 – Pankaj

+0

我即将尝试它。 – Andrecon