谷歌服务添加强制关闭应用程序与日志猫错误

问题描述:

我一直在开发一个简单的应用程序加载地图视图。我遵循API。 https://developers.google.com/maps/documentation/android/start#add_a_map谷歌服务添加强制关闭应用程序与日志猫错误

后执行的应用程序去强制关闭和logcat的错误 应用程式的AndroidManifest.xml中的元数据标签没有正确的价值。预计4030500但发现0 这是我的清单

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

<uses-sdk 
    android:minSdkVersion="12" 
    android:targetSdkVersion="13" /> 

<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"/> 

<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" > 
    <meta-data 
     android:name="com.google.android.maps.v2.API_KEY" 
     android:value="AIzaSyA5QozHkGwJP_9iJi7jtBV938T1wws02gA" /> 

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

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

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

这是我的主XML

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

<fragment xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/map" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:name="com.google.android.gms.maps.MapFragment"/> 

,这是主要的活动

package com.example.newgmaps; 

import android.os.Bundle; 
import android.app.Activity; 
import android.view.Menu; 

public class MainActivity extends Activity { 

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

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.main, menu); 
    return true; 
} 

}

+0

让我们看看stacktrace ! – WarrenFaith

+0

检查此:http://stackoverflow.com/questions/19724113/google-play-services-update?noredirect=1#comment29303121_19724113 –

+2

我已经使用此块 它说在应用程序必须更新谷歌播放服务...不知道它是什么,以及如何做到这一点。 –

做这些2步,让我知道取悦

月1日更新您的谷歌Play服务,因为在这里展示 enter image description here

第二个尝试,我已经为你

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

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

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

    <uses-permission android:name="icom.example.newgmaps.permission.MAPS_RECEIVE" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" /> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
    <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" /> 

    <application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 
     <meta-data 
      android:name="com.google.android.gms.version" 
      android:value="4030500" /> 
     <meta-data 
      android:name="com.google.android.maps.v2.API_KEY" 
      android:value="AIzaSyA5QozHkGwJP_9iJi7jtBV938T1wws02gA" /> 

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

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

</manifest> 
创造了这个新的清单文件

让我知道你是否也解决了这个问题 谢谢

我在运行4.3的2012 N7上运行应用程序时遇到同样的问题。

我不认为播放服务的实际发布的版本中version.xml的SDK版本一致:

google_play_services_version 4030500 

所以它要么等待在Play商店中的游戏服务更新,或者可能尝试改变的情况下, version.xml in google-play-services_lib.

+0

忘记说 - 这是在将元数据行添加到清单后。 – meavydev

+0

刚刚尝试编辑version.xml,它不起作用 - 它需要4030500,所以这是一个等待Play Store更新或恢复到以前的services_lib版本的情况。 – meavydev

+0

耶当然是同样的问题在这里。我想必须等待..无论如何保持联系..谢谢 –

如果启动Android SDK管理器,您应该会看到一个“Google Play for Froyo”模块。安装并使用此代替“新”版本。这对我有效。

尝试添加该元数据标签在应用程序代码中的清单:

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

,它给了我一个错误在清单:无法解析符号'@ integer/google_play_services_version' –

+2

我将其添加到清单。没有错误,但它要求一遍又一遍地更新播放服务... –

+0

在真实设备中执行 – Abdel

谷歌必须更新谷歌Play服务版本4.xxx enter image description here

我加了下面这样的XML代码在“AndroidManifest.xml”中

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

崩溃错误消失。 但是,当我打电话......

int iErrorCode = GooglePlayServicesUtil.isGooglePlayServicesAvailable(this); 

“iErrorCode”为2。2手段这样

公共静态最终诠释SERVICE_VERSION_UPDATE_REQUIRED 的谷歌Play服务已安装的版本过时。调用活动应将此错误代码传递给getErrorDialog(int,Activity,int)以获得本地化的错误对话框,以便在显示时解决错误。 常量值:2(0x00000002) Details...

而且还logcat的说...

W/GooglePlayServicesUtil(4728):Google Play服务已过期。 需要4030500但发现3266136

哪里是版本代码 “4030500”?

[SDK] \演员\谷歌\ google_play_services \ libproject \的Google Play-services_lib \ RES \值

你可以看到 “version.xml”。打开它!

<?xml version="1.0" encoding="utf-8"?> <resources> 
    <integer name="google_play_services_version">4030500</integer> 
</resources> 

Peekaboo ~~! :) 这就是为什么我们有这个的errorCode(2)当更新新的SDK,并使用新的“谷歌播放服务-lib的”。

好吧!得到它了!让我们在我的设备上查看我的Google Play版本。

enter image description here

我的手机上的版本是“4.4.21”是没有问题的,我认为。 这是什么“3266136”?这是从哪里来的?我不明白这。

如果我想出解决办法,我会更新这个长的答案。

祝你好运!大家好! :)

更新1: 我下载了apk 4.4.22并安装在我的手机上。但是,LogCat仍然显示我“3266136”。 这真的很奇怪。我认为Google-Team必须尽快解决它!

4.4.22 Download here...

更新2: 毕竟,我决定下级 “的Google Play-services_lib” 和 “Android的支持,v4.jar” 以前的版本。我会等待他们。 :)

+0

@ShootSahan上周Google更新了他们的”play service lib“。所以,这个问题解决了。我测试了lib并运行良好。请参阅:http://android-developers.blogspot.kr/2014/01/google-play-services-41.html – cmcromance

使用谷歌播放服务libproject以前版本的现在。它可以从这里下载:https://dl-ssl.google.com/android/repository/google_play_services_3225130_r10.zip

为我工作。

然后,您可以更新此后,当谷歌使可用的最新版本给大家,但东西告诉我这将需要一段时间这种变化传播到所有设备在那里。