2016-06-01 2 views
-1

Какой код я должен добавить и где получить методы 64K?Где добавить код 64K и где?

Я пытаюсь построить подписанный APK, но он дает мне вопрос все время!

Ошибка: количество ссылок метода в файле .dex не может превышать 64 КБ.

+0

https://developer.android.com/studio/build/multidex.html – Michael

ответ

0

Ответ KUMAR довольно близок, но не охватывает все детали.

Во-первых добавить необходимую конфигурацию вашего build.gradle модуля приложения:

app/build.gradle

android { 
    defaultConfig { 
     multiDexEnabled true 
    } 
} 

dependencies 
{ 
    compile 'com.android.support:multidex:1.0.1' 
} 

На втором шаге вы можете следовать двумя путями в зависимости от ваших потребностей.

a. У вас нет специального класса приложения. Так что вам нужно добавить класс MultiDexApplication из multidex библиотеки поддержки элементу приложения в манифесте:

AndroidManifest.xml

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

ИЛИ

б. У вас есть собственный класс приложений. Так что вам нужно сделать это расширить класс MultiDexApplication:

MyApplication.java

public class MyApplication extends MultiDexApplication { 

} 

AndroidManifest.xml

<application 
    android:name="MyApplication" 

Вы должны быть готовы перейти 64K предела метода.

Вы можете прочитать this tutorial над multidex, чтобы понять логику всех этих.

+0

Благодарим вас за решение и ответ @SafaOrhan :) Теперь у меня уже есть APK. И спасибо за учебник, чтобы понять логику. – Dpower

+0

Было приятно. Хорошего дня :) – SafaOrhan

0

Если наше приложение превышает 64K-методы, нам необходимо включить multiDex в нашем коде.

Добавить зависимость в build.gradle

dependencies 
    { 
     compile 'com.android.support:multidex:1.0.0' 
    } 

Включить multidex в build.gradle вроде следующего

android { 
    compileSdkVersion 21 
    buildToolsVersion "21.1.0" 

    defaultConfig { 
     ... 
     minSdkVersion 14 
     targetSdkVersion 21 
     ... 

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

Теперь синхронизировать свой код и запустить его, то он будет работать.

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