2017-02-22 22 views
6

Сегодня я нашел эту ошибку при попытке запустить приложение. Я предпринял следующие попытки его решения. - Сначала я удалил поддержку multidex, но я все еще вижу там кусочки apk. -i также попытка восстановления всего проекта, и обновил андроид поддержку и играть услуги библиотеки в последний, как рекомендовано java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/v4/util/ArrayMapjava.lang.NoClassDefFoundError: сбой разрешения: Landroid/support/v4/util/ArrayMap;

Android Studio - NoClassDefFoundError: Failed resolution of Landroid/support/v4/print/PrintHelper

java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/v4/os/BuildCompat.

NoClassDefFoundError: android.support.v4.util.ArrayMap

StackTrace выглядит следующим образом

java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/v4/util/ArrayMap; 
at com.google.firebase.FirebaseApp. 
<clinit> 
(Unknown Source) 
at com.google.firebase.FirebaseApp.initializeApp(Unknown Source) 
at com.google.firebase.provider.FirebaseInitProvider.onCreate(Unknown Source) 
at android.content.ContentProvider.attachInfo(ContentProvider.java:1751) 
at android.content.ContentProvider.attachInfo(ContentProvider.java:1726) 
at com.google.firebase.provider.FirebaseInitProvider.attachInfo(Unknown Source) 
at android.app.ActivityThread.installProvider(ActivityThread.java:5324) 
at android.app.ActivityThread.installContentProviders(ActivityThread.java:4898) 
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4838) 
at android.app.ActivityThread.access$1500(ActivityThread.java:178) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1536) 
at android.os.Handler.dispatchMessage(Handler.java:111) 
at android.os.Looper.loop(Looper.java:194) 
at android.app.ActivityThread.main(ActivityThread.java:5636) 
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:959) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:754) 
Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.v4.util.ArrayMap" on path: DexPathList[[zip file "/data/app/pinnacle.org.rider-1/base.apk", zip file "/data/app/pinnacle.org.rider-1/split_lib_dependencies_apk.apk", zip file "/data/app/pinnacle.org.rider-1/split_lib_slice_0_apk.apk", zip file "/data/app/pinnacle.org.rider-1/split_lib_slice_1_apk.apk", zip file "/data/app/pinnacle.org.rider-1/split_lib_slice_2_apk.apk", zip file "/data/app/pinnacle.org.rider-1/split_lib_slice_3_apk.apk", zip file "/data/app/pinnacle.org.rider-1/split_lib_slice_4_apk.apk", zip file "/data/app/pinnacle.org.rider-1/split_lib_slice_5_apk.apk", zip file "/data/app/pinnacle.org.rider-1/split_lib_slice_6_apk.apk", zip file "/data/app/pinnacle.org.rider-1/split_lib_slice_7_apk.apk", zip file "/data/app/pinnacle.org.rider-1/split_lib_slice_8_apk.apk", zip file "/data/app/pinnacle.org.rider-1/split_lib_slice_9_apk.apk"],nativeLibraryDirectories=[/data/app/pinnacle.org.rider-1/lib/arm, /vendor/lib, /system/lib]] 
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:511) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:469) 
at com.google.firebase.FirebaseApp. 
<clinit> 
(Unknown Source) 
at com.google.firebase.FirebaseApp.initializeApp(Unknown Source) 
at com.google.firebase.provider.FirebaseInitProvider.onCreate(Unknown Source) 
at android.content.ContentProvider.attachInfo(ContentProvider.java:1751) 
at android.content.ContentProvider.attachInfo(ContentProvider.java:1726) 
at com.google.firebase.provider.FirebaseInitProvider.attachInfo(Unknown Source) 
at android.app.ActivityThread.installProvider(ActivityThread.java:5324) 
at android.app.ActivityThread.installContentProviders(ActivityThread.java:4898) 
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4838) 
at android.app.ActivityThread.access$1500(ActivityThread.java:178) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1536) 
at android.os.Handler.dispatchMessage(Handler.java:111) 
at android.os.Looper.loop(Looper.java:194) 
at android.app.ActivityThread.main(ActivityThread.java:5636) 
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:959) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:754) 
Suppressed: java.lang.ClassNotFoundException: android.support.v4.util.ArrayMap 
at java.lang.Class.classForName(Native Method) 
at java.lang.BootClassLoader.findClass(ClassLoader.java:781) 
at java.lang.BootClassLoader.loadClass(ClassLoader.java:841) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:504) 
... 19 more 
Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available 

Вот мой Gradle файл

apply plugin: 'com.android.application' 
apply plugin: 'realm-android' 
apply plugin: 'com.google.firebase.firebase-crash' 

android { 
    compileSdkVersion 25 
    buildToolsVersion "25.0.2" 
    defaultConfig { 
     applicationId "pinnacle.org.rider" 
     minSdkVersion 16 
     targetSdkVersion 25 
     versionCode 1 
     versionName "1.0" 
     // multiDexEnabled true 
     vectorDrawables.useSupportLibrary = true 
    } 

    useLibrary 'org.apache.http.legacy' 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 

     /* debug { 
      minifyEnabled true 
      shrinkResources true 
     }*/ 
    } 

    dataBinding { 
     enabled true 
    } 

    dexOptions { 
     jumboMode = true 
     // here heap size give 4g i got this thing from https://groups.google.com/forum/#!topic/adt-dev/P_TLBTyFWVY 
     javaMaxHeapSize "4g" 
    } 

    packagingOptions { 
     exclude 'META-INF/NOTICE' // will not include NOTICE file 
     exclude 'META-INF/LICENSE' // will not include LICENSE file 
     exclude 'META-INF/notice' 
     exclude 'META-INF/notice.txt' 
     exclude 'META-INF/license' 
     exclude 'META-INF/license.txt' 
    } 
} 


dependencies { 
    compile fileTree(include: ['*.jar'], dir: 'libs') 
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { 
     exclude group: 'com.android.support', module: 'support-annotations' 
    }) 
    compile project(':trupple-mvp') 
    compile project(':pinbuoy') 
    compile 'com.squareup:otto:1.3.8' 
    compile 'io.card:android-sdk:5.4.2' 
    compile 'com.google.guava:guava:19.0' 
    compile 'co.paystack.android:paystack:2.1.2' 
    testCompile 'org.robolectric:robolectric:3.1.1' 
    compile 'com.google.firebase:firebase-messaging:10.2.0' 
    compile 'com.google.firebase:firebase-crash:10.2.0' 
    compile 'com.squareup.okhttp3:okhttp:3.3.0' 
    compile 'com.squareup.okhttp3:logging-interceptor:3.3.0' 
    compile 'com.squareup.retrofit2:retrofit:2.1.0' 
    compile 'com.squareup.retrofit2:converter-gson:2.0.1' 
    compile 'com.squareup.retrofit2:converter-jackson:2.0.1' 
    compile 'com.github.cooltechworks:CreditCardView:v1.0' 
    compile 'com.squareup.retrofit2:adapter-rxjava:2.0.1' 
    // compile 'com.android.support:multidex:1.0.1' 
    compile 'javax.annotation:javax.annotation-api:1.2' 
    compile 'de.hdodenhof:circleimageview:2.0.0' 
    compile 'it.michelelacorte.swipeablecard:library:2.3.0' 
    compile 'com.github.jorgecastilloprz:fabprogresscircle:[email protected]' 
    compile 'com.github.lawloretienne:discreteslider:0.0.9' 
    compile 'com.jaredrummler:material-spinner:1.1.0' 
    compile files('libs/libphonenumber-7.7.0.jar') 
    compile('io.socket:socket.io-client:0.8.1') { 
     exclude group: 'org.json', module: 'json' 
    } 
    compile 'com.android.support:support-vector-drawable:25.1.1' 
    compile 'com.github.dmytrodanylyk.circular-progress-button:library:1.1.3' 
    compile 'com.android.support.constraint:constraint-layout:1.0.0-beta5' 
    testCompile 'org.mockito:mockito-core:1.9.5' 
    testCompile 'junit:junit:4.12' 
} 

apply plugin: 'com.google.gms.google-services' 

Мои пользовательские библиотеки имеют следующие, как их Gradle

apply plugin: 'com.android.library' 

android { 
    compileSdkVersion 25 
    buildToolsVersion "25.0.2" 
    defaultConfig { 
     minSdkVersion 15 
     targetSdkVersion 25 
     versionCode 1 
     versionName "1.0" 
     testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 
    } 

    useLibrary 'org.apache.http.legacy' 

    dataBinding { 
     enabled true 
    } 

    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { 
     exclude group: 'com.android.support', module: 'support-annotations' 
    }) 
    compile 'com.google.android.gms:play-services:10.2.0' 
    //compile 'com.android.support:support-v4:25.1.1' 
    compile 'com.android.support:recyclerview-v7:25.1.1' 
    //compile 'com.android.support:appcompat-v7:25.1.1' 
    compile 'com.android.support:cardview-v7:25.1.1' 
    compile 'com.android.support:design:25.1.1' 
    compile 'com.squareup.picasso:picasso:2.5.0' 
    compile 'io.reactivex:rxandroid:1.2.1' 
    compile 'io.reactivex:rxjava:1.1.6' 
    compile 'com.google.code.gson:gson:2.7' 
    testCompile 'junit:junit:4.12' 

} 

и второй с

apply plugin: 'com.android.library' 

android { 
    compileSdkVersion 25 
    buildToolsVersion "25.0.2" 

    defaultConfig { 
     minSdkVersion 15 
     targetSdkVersion 25 
     versionCode 1 
     versionName "1.0" 
     testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 

    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { 
     exclude group: 'com.android.support', module: 'support-annotations' 
    }) 
    compile 'com.android.support:appcompat-v7:25.1.1' 
    testCompile 'junit:junit:4.12' 
} 

Пожалуйста, я застрял с этим

Я решил это, выполнив следующие действия.

  1. Выбор точного пакета, необходимого в модуле библиотеки игровых сервисов.
  2. Не допускайте дублирования библиотеки поддержки.
  3. Очистить и перестроить проект.
  4. Удерживает библиотечный источник под методами 64k, поэтому для мультидекса необходимо.
+1

какое устройство (уровень API) вы используете? –

+0

Вы нашли решение? Я столкнулся с подобной проблемой. –

+0

Это похоже на эту проблему: https: //stackoverflow.com/questions/41102081/java-lang-noclassdeffounderror-failed-resolution-of-landroid-support-v4-util-a –

ответ

0

Похоже, вам не хватает библиотеки поддержки v4 в зависимостях градиента приложения. Попробуйте добавить библиотеку поддержки v4

compile 'com.android.support:support-v4:25.1.1' 
+1

Я добавил его, и он все еще не работал – geniusgeek

+0

okey ... вы можете переместить google-play -services зависимости библиотеки в графе приложения. – MSC

+0

Я замечаю, что приложение работает на других устройствах, но не на моем телефоне. мой телефон работает на Android 5.1, API 22, как вы думаете, в чем проблема? – geniusgeek