Ответ 1
Multidex кажется лучшим (и самым быстрым) вариантом для обращения к пределу метода 65K. Google имеет отличную документацию по настройке Multidex здесь.
Я работаю над проектом, который быстро приближается к пределу метода 64K для файлов dex. Это сообщение Android Developer blog (с июля 2011 года) объясняет, как получить динамическую загрузку классов, работая с построением командной строки, основанную на Ant, но не изучает, как заставить его работать из среды IDE (помимо того, что он не будет работать в Eclipse).
Я огляделся и ничего не нашел, чтобы заставить эту систему работать в IntelliJ. Поддерживает ли IntelliJ создание приложений с несколькими файлами dex? Если да, то как его настроить?
Multidex кажется лучшим (и самым быстрым) вариантом для обращения к пределу метода 65K. Google имеет отличную документацию по настройке Multidex здесь.
Попробуйте использовать ProGuard, чтобы вырезать неиспользуемые классы и методы из вашего проекта, и вы должны (надеюсь) найти, что вам не нужно несколько dex.
Если вы это сделаете: IntelliJ и Eclipse - это только IDE - они напрямую не строят ваш код, поэтому вам нужно будет определить, как строится ваш проект - скорее всего, Ant или Gradle.
Если ваш проект является проектом Gradle, тогда в корне проекта будет файл build.gradle. Если это так, вам нужно будет посмотреть, как сделать то же самое с плагином Android Gradle, хорошим местом для начала было бы http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Manipulating-tasks.
Есть два варианта:
Можете ли вы предоставить подробную информацию о своем проекте?
У меня была такая же проблема после подключения библиотеки PlayN к моему проекту. Сначала я прочитал все сообщения, которые вы упомянули и связали с ними, но в конце концов я решил проблему, исключив часть классов из зависимого бара Pythagoras (я удалил пакет pythagoras.d, который для "double", поскольку pythagoras.f, float ", вместо него использовался в PlayN), который был одной из самых больших зависимостей в PlayN.
Возможно, вы можете найти подобное слабое место в зависимостях проекта.
Eclipse может запускать внешние скрипты ant, но это не поможет с инструментами. Лучшая рекомендация - Android Studio и Gradle, так как все команды запускаются вне среды IDE, затем переносите это ant script http://code.google.com/p/android-custom-class-loading-sample/source/browse/trunk/android-custom-class-loading-sample/build.xml to gradle.
Следите за официальной поддержкой в соответствии с: https://groups.google.com/forum/#!topic/gradle-android-plugin-users/zG_xUeVaV7s