2016-02-24 2 views
1

В моем проекте должна быть гистограмма, и я включил библиотеку MPAndroid Chart в свой проект. Однако это не удается, и оно дает следующее сообщение.MPAndroid Chart: «Невозможно выполнить dex» issue

Unable to execute dex: Cannot merge new index 67075 into a non-jumbo instruction! Conversion to Dalvik format failed: Unable to execute dex: Cannot merge new index 67075 into a non-jumbo instruction!

Я знаю причину этой ошибки, как я включил другие библиотеки в моем проекте, который превышает лимит на Android. Одним из альтернатив является использование другой библиотеки с меньшим количеством методов. Однако, если я хочу использовать эту библиотеку, есть ли какие-либо методы, чтобы я мог обрезать размер библиотеки для достижения моей цели.

+0

Стандартным инструментом, предоставляемым инструментами Android, является Proguard. Об этом много литературы. –

+0

Кроме того, multidexing. –

+0

использование мультисайдинг .... –

ответ

1

Добавить dex.force.jumbo=true в первой строке project.properties

См here

Я надеюсь, что это помогает.

0

Вы можете включить Jumbo Mode в build.gradle. Измените следующую строку и очистите проект до повторной настройки.

android { 
    dexOptions { 
     jumboMode = true 
    } 
} 

Вы также можете включить Multi DEX

android { 
    defaultConfig { 
     ... 
     minSdkVersion 14 
     targetSdkVersion 23 
     ... 

     // Enabling multidex support. 
     multiDexEnabled true 
    } 
    ... 
} 

Разница между Jumbo Mode и мульти Dex, как показано here является:

Jumbo Режим, при чтении https://source.android.com/devices/tech/dalvik/dalvik-bytecode.html, сопзЬ -string/jumbo - это режим jumbo для строки. Речь идет о коде операции, например: op vAA, string @ BBBBBBBB в сравнении с op opAA, string @ BBBB, 32 бит против 16 бит.

Multi Dex позволяет загружать классы из более чем одного файла dex. Первичные классы.dex должны содержать классы, необходимые для вызова этих методов класса. Вторичные файлы dex, найденные в приложении apk, будут добавлены в загрузчик классов после первого вызова MultiDex.install (Context). https://developer.android.com/reference/android/support/multidex/MultiDex.html

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