2015-12-27 12 views
23

Wcześniej korzystałem z usług Google Play 8.3.0 bez żadnego problemu. Szukam uaktualnienia do usług Google Play 8.4.0. Korzystam z następujących bibliotek odtwarzania:Po aktualizacji do usług Google Play 8.4.0 moja aplikacja ulega awarii podczas uruchamiania

compile 'com.google.android.gms:play-services-analytics:8.4.0' 
compile 'com.google.android.gms:play-services-location:8.4.0' 
compile 'com.google.android.gms:play-services-gcm:8.4.0' 

Po uruchomieniu aplikacji ulega awarii, z następującym dziennikiem.

12-27 03:01:33.915 20567-20567/com.ryanc.android.stage.debug E/AndroidRuntime: FATAL EXCEPTION: main 
    Process: com.ryanc.android.stage.debug, PID: 20567 
    java.lang.NoSuchMethodError: No static method zzz(Ljava/lang/Object;)Ljava/lang/Object; in class Lcom/google/android/gms/common/internal/zzx; or its super classes (declaration of 'com.google.android.gms.common.internal.zzx' appears in /data/app/com.ryanc.android.stage.debug-1/base.apk:classes17.dex) 
    at com.google.android.gms.measurement.internal.zzw.zzaT(Unknown Source) 
    at com.google.android.gms.measurement.AppMeasurementContentProvider.onCreate(Unknown Source) 
    at android.content.ContentProvider.attachInfo(ContentProvider.java:1696) 
    at android.content.ContentProvider.attachInfo(ContentProvider.java:1671) 
    at android.app.ActivityThread.installProvider(ActivityThread.java:4999) 
    at android.app.ActivityThread.installContentProviders(ActivityThread.java:4594) 
    at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4534) 
    at android.app.ActivityThread.access$1500(ActivityThread.java:151) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1364) 
    at android.os.Handler.dispatchMessage(Handler.java:102) 
    at android.os.Looper.loop(Looper.java:135) 
    at android.app.ActivityThread.main(ActivityThread.java:5254) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at java.lang.reflect.Method.invoke(Method.java:372) 
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) 

Edit: Nie jestem pewien, że to pomoże, ale na życzenie @gerardnimo tutaj jest pełny plik build.gradle. Warto również zauważyć, że wypróbowałem czystą kompilację i usunąłem i ponownie zainstalowałem sdk z usług odtwarzania z mojego komputera.

apply plugin: 'com.android.application' 
apply plugin: 'checkstyle' 

def SDK = "$MIN_SDK_VERSION" 
def V_CODE = "$VERSION_CODE" 

buildscript { 
    repositories { 
     mavenCentral() 
    } 
} 

repositories { 
    mavenCentral() 
    jcenter() 
    maven { url 'https://zendesk.artifactoryonline.com/zendesk/repo' } 
    maven { url "http://kahuna.github.io/kahuna-android/sdk" } 
} 

android { 
    compileSdkVersion 23 
    buildToolsVersion '23.0.2' 
    defaultConfig { 
     applicationId "com.ryanc.android" 
     minSdkVersion SDK.toInteger() 
     targetSdkVersion 23 
     versionCode V_CODE.toInteger() 
     versionName "$APP_VERSION.$BUILD_NUMBER" 
     multiDexEnabled true 
    } 
    signingConfigs { 
     debug { 
      storeFile file("$DEBUG_KEYSTORE_PATH") 
      storePassword "$DEBUG_KEYSTORE_PASSWORD" 
      keyAlias "$DEBUG_KEY_ALIAS" 
      keyPassword "$DEBUG_KEY_PASSWORD" 
     } 
     release { 
      storeFile file("$KEYSTORE_PATH") 
      storePassword "$KEYSTORE_PASSWORD" 
      keyAlias "$KEY_ALIAS" 
      keyPassword "$KEY_PASSWORD" 
     } 
    } 
    compileOptions { 
     sourceCompatibility JavaVersion.VERSION_1_7 
     targetCompatibility JavaVersion.VERSION_1_7 
    } 
    buildTypes { 
     debug { 
      applicationIdSuffix ".debug" 
     } 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
      signingConfig signingConfigs.release 
     } 
    } 
    packagingOptions { 
     exclude 'META-INF/LICENSE' 
     exclude 'META-INF/NOTICE' 
    } 
    productFlavors { 
     prod { 
      applicationId "com.ryanc.android" 
     } 

     stage { 
      applicationId "com.ryanc.android.stage" 
     } 

     qa { 
      applicationId "com.ryanc.android.qa" 
     } 

     dev { 
      applicationId "com.ryanc.android.dev" 
     } 
    } 
    dexOptions { 
     javaMaxHeapSize "4g" 
    } 
} 

repositories { 
    flatDir { 
     dirs 'libs' 
    } 
} 

dependencies { 
    def supportVersion = "23.1.1" 

    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile project(':api') 
    compile "com.android.support:support-v4:$supportVersion" 
    compile "com.android.support:appcompat-v7:$supportVersion" 
    compile "com.android.support:design:$supportVersion" 
    compile 'com.facebook.android:facebook-android-sdk:4.8.1' 
    compile 'uk.co.chrisjenx:calligraphy:2.0.1' 
    compile "com.android.support:cardview-v7:$supportVersion" 
    compile "com.android.support:recyclerview-v7:$supportVersion" 
    compile "com.android.support:support-v13:$supportVersion" 
    compile 'com.google.android.gms:play-services-analytics:8.4.0' 
    compile 'com.google.android.gms:play-services-location:8.4.0' 
    compile 'com.google.android.gms:play-services-gcm:8.4.0' 
    compile 'com.fasterxml.jackson.core:jackson-databind:2.4.5' 
    compile 'com.fasterxml.jackson.core:jackson-core:2.4.5' 
    compile 'com.fasterxml.jackson.core:jackson-annotations:2.4.5' 
    compile 'joda-time:joda-time:2.5' 
    compile 'com.squareup.retrofit:retrofit:1.7.1' 
    compile 'com.squareup.okhttp:okhttp-urlconnection:2.5.0' 
    compile 'com.squareup.okhttp:okhttp:2.5.0' 
    compile 'com.squareup.picasso:picasso:2.5.2' 
    compile 'com.netflix.rxjava:rxjava-core:0.20.7' 
    compile 'com.netflix.rxjava:rxjava-android:0.20.7' 
    compile 'com.squareup.dagger:dagger:1.2.2' 
    compile 'com.squareup.mortar:mortar:0.16' 
    compile 'com.squareup.flow:flow:0.8' 
    compile 'com.jakewharton:butterknife:6.1.0' 
    compile 'com.jakewharton.timber:timber:2.5.1' 
    compile 'com.braintreepayments:encryption:2.0.0' 
    compile 'com.newrelic.agent.android:android-agent:5.3.2' 
    compile 'com.instabug.library:instabugsupport:1.7.1' 
    compile 'net.hockeyapp.android:HockeySDK:3.0.2' 
    provided 'com.squareup.dagger:dagger-compiler:1.2.2' 
    compile 'com.rengwuxian.materialedittext:library:2.1.4' 
    compile 'com.android.support:multidex:1.0.1' 
    compile 'com.mixpanel.android:mixpanel-android:4.6.2' 
    compile 'com.roomorama:caldroid:2.2.0' 
    compile 'com.squareup.phrase:phrase:1.1.0' 
    compile 'com.zendesk:sdk:1.5.0.1' 
    compile 'com.flipboard:bottomsheet-core:1.4.3' 
    compile 'com.kahuna.sdk:kahuna:2.3.1' 
    compile 'io.branch.sdk.android:library:1.+'' 
} 
+0

Czy możesz również wyświetlić plik build.gradle? – gerardnimo

+0

To może być rozwiązanie: http://stackoverflow.com/questions/24626180/could-not-find-class-com-google-android-gms-location-internal-parcelablegeofenc – piotrek1543

+0

@gerardnimo dodał plik build.gradle. piotrek1543 niestety nie ma szczęścia z połączonym rozwiązaniem. –

Odpowiedz

4

Udało mi się to rozwiązać. Mój współpracownik mógł uaktualnić bez problemów. Poszedłem do folderów sdk/extras, a moje były całkiem inne. Więc przeniosłem folder skopiował moich współpracowników i działało.

Myślę, że ten folder i być może coś innego w folderze sdk właśnie dostał się w dziwny stan, czyszczenie folderu i ponowne pobieranie może działać.

+0

Pracowałem dla mnie! Pobrałem ponownie SDK, zsynchronizowałem wszystko, a następnie wszystko poszło dobrze. Dzięki! – MSquare

1

Natknąłem się na ten problem właśnie teraz. Uaktualniłem wersję 7.8.0 do 8.4.0 i otrzymałem ten sam błąd, co Ty. Przebudowa i/lub oczyszczenie projektu sprawdziły się u mnie.

0

Myślę, że powinieneś dołączyć bibliotekę bazową tej samej wersji. Następnie zaczyna działać ponownie.

7

Kiedy selektywnie kompilujemy API serwisu Google Play w wersji 8.4.0, napotkaliśmy również problemy (8.3.0 -> 8.4.0).

Błąd:

Could not find method com.google.android.gms.common.internal.zzx.zzy 

przed uaktualnieniem:

compile 'com.google.android.gms:play-services-maps:8.3.0' 

Po aktualizacji (nie działa):

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

Po uaktualnieniu (działa dobrze):

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

Wniosek: wygląda na to, że niektóre usługi odtwarzania mają teraz pewne zależności, które trzeba wyraźnie określić, np .: maps -> gcm.

21

Wersje play-libs usług powinna być równa, na przykład:

DO

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

DONT

compile 'com.google.android.gms:play-services-maps:7.8.0' 
compile 'com.google.android.gms:play-services-gcm:8.4.0' 
0

Mam wobec tego samego problemu podczas przechodzenia przez official tutorial.

Roztwór zmienić

classpath 'com.google.gms:google-services:2.0.0-alpha6' 

do

classpath 'com.google.gms:google-services:3.0.0' 

Znalazłem prawidłowy numer wersji w sample on the github.

1

Mam ten sam problem i rozwiązuję ten problem, poprawnie konfigurując reguły proguard.

co zrobiłem tutaj pod jak poniżej:

najpierw muszę wykluczonych klas google od kasował tak w proguard-rules.pro:

-keep public class com.google.** {*;} 

drugi mam włączone to minifyEnabled w build.gradle tak:

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.3" 

    defaultConfig { 
     applicationId "com.e2e.quiz" 
     minSdkVersion 15 
     targetSdkVersion 23 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      minifyEnabled true 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile fileTree(include: ['*.jar'], dir: 'libs') 
    testCompile 'junit:junit:4.12' 
    compile 'com.android.support:appcompat-v7:23.1.1' 
    compile 'com.android.support:recyclerview-v7:23.1.1' 
    compile 'com.android.support:design:23.1.1' 
    compile 'com.github.bumptech.glide:glide:3.6.1' 
    compile 'com.squareup.picasso:picasso:2.4.0' 
    compile 'com.google.android.gms:play-services-gcm:9.2.1' 
    compile 'com.google.android.gms:play-services-analytics:9.2.1' 
    compile 'com.google.android.gms:play-services-ads:9.2.1' 
    compile project(':ast-dst') 
} 
2

prostu miałem ten problem, ale rozwiązać go przez obniżenie wersji Gradle tak:

Stary, kłopotliwe wersja:

classpath 'com.android.tools.build:gradle:2.2.0-rc2' 

wersji Poprawiono:

classpath 'com.android.tools.build:gradle:2.1.3' 
0

Usuwanie i ponowne usług Google z menedżera SDK i usuwanie zawartości swojej projekcie/.gradle/rozwiązać go dla mnie

0

compile 'com.google.android.gms:play-services:+' compile 'com.google.firebase:firebase-core:+'

Co działa na mnie

Powiązane problemy