Неисправность установки Multidex

Я использую библиотеку CircledImageView. Он отлично работает на версиях lollipop + android. Но в kitkat это рушится. Поэтому после поиска в Google. Я обнаружил, что мне нужно реализовать multidex в моем приложении.

Так что это мой класс приложения.

public class FireApp extends Application { @Override public void onCreate() { super.onCreate(); Firebase.setAndroidContext(this); Fresco.initialize (this); } @Override protected void attachBaseContext(Context base) { super.attachBaseContext(base); MultiDex.install(this); } } 

И в build.gradle в defaultconfig MultiDexEnabled верно

 multiDexEnabled true 

Но когда я запускаю приложение, я получаю следующую ошибку.

 java.lang.NoSuchFieldException: Field dexElementsSuppressedExceptions not found in class dalvik.system.PathClassLoader at android.support.multidex.MultiDex.findField(MultiDex.java:288) at android.support.multidex.MultiDex.access$300(MultiDex.java:57) at android.support.multidex.MultiDex$V19.install(MultiDex.java:390) at android.support.multidex.MultiDex$V19.access$000(MultiDex.java:369) at android.support.multidex.MultiDex.installSecondaryDexes(MultiDex.java:242) at android.support.multidex.MultiDex.install(MultiDex.java:161) at android.support.multidex.MultiDexApplication.attachBaseContext(MultiDexApplication.java:39) at com.buckydroid.anonchat.FireApp.attachBaseContext(Unknown Source) at android.app.Application.attach(Application.java:182) at android.app.Instrumentation.newApplication(Instrumentation.java:991) at android.app.Instrumentation.newApplication(Instrumentation.java:975) at android.app.LoadedApk.makeApplication(LoadedApk.java:511) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4564) at android.app.ActivityThread.access$1500(ActivityThread.java:139) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1353) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:149) at android.app.ActivityThread.main(ActivityThread.java:5268) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:515) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:609) at dalvik.system.NativeStart.main(Native Method) 

Solutions Collecting From Web of "Неисправность установки Multidex"

Выполните следующие шаги:

1) Добавьте зависимость в файл build.gradle:

 compile 'com.android.support:multidex:1.0.0' 

2) Включить мультидекс и установить размер кучи

 defaultConfig { applicationId "your package name" minSdkVersion 19 targetSdkVersion 23 versionCode 1 versionName "1.0" multiDexEnabled true } dexOptions { javaMaxHeapSize "4g" } 

3) В классе Application добавьте это

 @Override protected void attachBaseContext(Context base) { super.attachBaseContext(base); MultiDex.install(this); } 

4) Добавьте это в свой манифест в <application> :

 android:name=".YourApplicationClassName" 

Попробуйте включить compile 'com.android.support:multidex:1.0.1' в файл build.gradle .

  1. Убедитесь, что приложение, объявленное в файле манифеста, расширяет MultiDexApplication .
  2. Убедитесь, что файл build.gradle включен в multidexing и включил compile 'com.android.support:multidex:1.0.1' .
  3. Удостоверьтесь, что вы не контролируетесь быстрой версией Android Studio. Вы можете удалить все каталоги сборки и установить с помощью приложения с помощью командной строки.
  4. Если ваше приложение имеет ароматы, убедитесь, что установленный аромат использует MultiDexApplication

Попробуйте это. Внутри вашего файла build.gradle на уровне приложения поместите следующую строку кода

 android{ //compielsdkVersion.. //.. //.. vectorDrawables.useSupportLibrary = true } 

И в Activity.java, что вы используете CircularImageView, установите следующий статический блок в верхней части метода onCreate (), подобный этому

  //... //.... static { AppCompatDelegate.setCompatVectorFromResourcesEnabled(true); } @Override protected void onCreate(Bundle savedInstanceState) { //... //... 

Добавьте эту строку в свой тег приложения в манифест

 android:name="android.support.multidex.MultiDexApplication" 

Предыдущие решения в порядке, но одна недостающая вещь MultiDexApplication

 public class FireApp extends MultiDexApplication 

Попробуйте включить compile 'com.android.support:multidex:1.0.1 ' в файл build.gradle.