2016-04-29 4 views
1

Я создаю приложение для таблеток Amazon Fire. Я получаю эту ошибку. Пожалуйста, помогите мне разобраться в этой ошибке. Спасибо! `java.lang.NoClassDefFoundError: com.amazon.android.Kiwi

04-26 00:16:59.470: E/AndroidRuntime(29646): FATAL EXCEPTION: main 
04-26 00:16:59.470: E/AndroidRuntime(29646): java.lang.NoClassDefFoundError: com.amazon.android.Kiwi 
04-26 00:16:59.470: E/AndroidRuntime(29646): at com.smartdevs.playtube.Activities.MainActivity.onCreate(MainActivity.java) 
04-26 00:16:59.470: E/AndroidRuntime(29646): at android.app.Activity.performCreate(Activity.java:4635) 
04-26 00:16:59.470: E/AndroidRuntime(29646): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049) 
04-26 00:16:59.470: E/AndroidRuntime(29646): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1999) 
04-26 00:16:59.470: E/AndroidRuntime(29646): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2060) 
04-26 00:16:59.470: E/AndroidRuntime(29646): at android.app.ActivityThread.access$600(ActivityThread.java:127) 
04-26 00:16:59.470: E/AndroidRuntime(29646): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1181) 
04-26 00:16:59.470: E/AndroidRuntime(29646): at android.os.Handler.dispatchMessage(Handler.java:99) 
04-26 00:16:59.470: E/AndroidRuntime(29646): at android.os.Looper.loop(Looper.java:137) 
04-26 00:16:59.470: E/AndroidRuntime(29646): at android.app.ActivityThread.main(ActivityThread.java:4558) 
04-26 00:16:59.470: E/AndroidRuntime(29646): at java.lang.reflect.Method.invokeNative(Native Method) 
04-26 00:16:59.470: E/AndroidRuntime(29646): at java.lang.reflect.Method.invoke(Method.java:511) 
04-26 00:16:59.470: E/AndroidRuntime(29646): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 
04-26 00:16:59.470: E/AndroidRuntime(29646): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) 
04-26 00:16:59.470: E/AndroidRuntime(29646): at dalvik.system.NativeStart.main(Native Method) 
04-26 00:16:59.595: W/ActivityManager(209): Force finishing activity com.smartdevs.playtube/.Activities.MainActivity 
04-26 00:16:59.595: V/ActivityStack(209): Prepare close transition: finishing ActivityRecord{41e6af50 com.smartdevs.playtube/.Activities.MainActivity} 
04-26 00:16:59.681: D/dalvikvm(209): GC_CONCURRENT freed 1738K, 30% free 20462K/28935K, paused 3ms+7ms` 

ответ

1

Эта ошибка возникает, если у вас включен multidex. для устранения этой ошибки вам придется внести некоторые изменения.

1) Создайте имя файла multidex.keep в корневой папке приложения.

2) Напишите com/amazon/android/Kiwi.class в этом файле.

3) Откройте файл build.gradle для приложения и напишите ниже код в теге android.

dexOptions { 
    incremental true 
    javaMaxHeapSize "4g" 
    preDexLibraries = false 
    additionalParameters = ["--set-max-idx-number=55000"] // default 60000 
} 

4) Откройте приложение build.gradle файл и внутри андроида тега записи

afterEvaluate { 
if (!android.applicationVariants.matching { it.flavorName == 'mobile' }.isEmpty()) { 
    tasks.matching { 
     it.name.startsWith('dex') 
    }.each { dx -> 
     if (dx.additionalParameters == null) { 
      dx.additionalParameters = [] 
     } 
     dx.additionalParameters += '--multi-dex' // enable multidex 
     dx.additionalParameters += "--main-dex-list=$projectDir/multidex.keep".toString() 
    } 
} 

}

Смежные вопросы