2016-08-03 14 views
-1

Ich habe ein Problem beim Starten meiner App. Ich hatte immer die Google Play-Dienste in meiner app, in meinem gradle heißt es:Android Studio - Google Play-Dienste Fehler

compile 'com.google.android.gms:play-services-ads:8.4.0' 
compile 'com.google.android.gms:play-services:8.4.0' 

Aber jetzt, ich weiß nicht, warum, Android Studio einen Fehler wirft sagen:

Error:FAILURE: Build failed with an exception. 

* What went wrong: 
Execution failed for task':app:prepareComGoogleAndroidGmsPlayServices840Library'. 
> Could not expand ZIP 'C:\Users\Roman\...\sdk\extras\google\m2repository\com\google\android\gms\play-services\8.4.0\play-services-8.4.0.aar'. 

* Exception is: 
org.gradle.api.tasks.TaskExecutionException: Execution failed for task':app:prepareComGoogleAndroidGmsPlayServices840Library'. 
... 
Caused by: org.gradle.api.GradleException: Could not expand ZIP 'C:\Users\Roman\...\sdk\extras\google\m2repository\com\google\android\gms\play-services\8.4.0\play-services-8.4.0.aar'. 
... 
Caused by: java.util.zip.ZipException: archive is not a ZIP archive 

Scheint so, als ob man versucht, ein .aar zu entzippen ... Wie repariere ich das?

Vielen Dank im Voraus

+0

Sie sollten auch beachten, dass es keinen Sinn, Play-Dienste-Anzeigen in mit und Play-Dienste, weil das jedes einzelne Mittel eins inklusive Anzeigen. Fügen Sie nur bestimmte Play-Dienste hinzu, die Sie benötigen. Dies reduziert die apk-Größe und die Anzahl der Methoden. [docs] (https://developers.google.com/android/guides/setup#add_google_play_services_to_your_project) – headsvk

Antwort

0

auf Ihrem Android-SDK-Manager gehen und stellen Sie sicher, dass Sie die „Google-Repositorys“ installiert haben und „Google Play-Dienste“ Bibliotheken. Der Fehler wird dadurch verursacht, dass Gradle nicht in der Lage ist, die notwendigen Bibliotheken zum Kompilieren zu finden.

+0

Bereits fertig, alles wird aktualisiert Ich habe persönlich im Verzeichnis sdk nachgesehen –

+0

Verwenden Sie die neuesten Wrapper und Build-Tools? – headsvk

+0

Ich denke schon, ich aktualisierte Android Studio gestern –

0

Der Grund ist, dass, wenn wir Google Play Services-Bibliothek in Android verwenden, nach dem Kompilieren der Bibliothek in build.gradle, müssen wir die Bibliotheksversion in der android.manifest-Datei unter dem Anwendungs-Tag angeben.

Wir tun dies über die <meta-data>-Tag. Beachten Sie, dass die direkte Eingabe der Version ist keine gute Praxis, so dass wir tun es die folgende Art und Weise unter Verwendung von

<application 
    android:allowBackup="true" 
    android:icon="@mipmap/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" > 
    <meta-data android:name="com.google.android.gms.version" 
     android:value="@integer/google_play_services_version" /> 
    <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> 
    </activity> 
</application> 
+0

Das gleiche Problem und es sagt, dass es nicht lösen kann @ integer/google_play_services_version –

+0

versuchen Sie mit Ihrer Bibliothek auf diese Weise compile 'com.google.android.gms: play-services: 8. + ' –

+0

Versuchen Sie auch, Ihr Projekt zu säubern oder neu zu erstellen. Wenn Google Play Services über den SDK-Manager korrekt installiert wird, wird @ integer/google_play_services_version gefunden –