Qu'entend-on par "multiDexEnabled true" dans Android? Pourquoi utilisons-nous cela? Quel est l'effet s'il est activé?
Les fichiers d'application Android (APK) contiennent des fichiers bytecode exécutables au format la forme des fichiers exécutables Dalvik (DEX), contenant le fichier compilé code utilisé pour exécuter votre application. Limites de la spécification Dalvik Executable le nombre total de méthodes pouvant être référencées dans un seul fichier DEX fichier sur 65 536, y compris les méthodes de structure Android, les méthodes de bibliothèque, et méthodes dans votre propre code. Dépasser cette limite nécessite que vous configurez votre processus de création d'application pour générer plus d'un DEX fichier, appelé configuration multidex.
Vous devriez lire la ligne officielle sur Création d'applications avec plus de 64K méthodes
Les applications Android prennent par défaut en charge SingleDex, ce qui limite votre application à 65536 méthodes (références). Donc multidexEnabled = true signifie simplement que vous pouvez maintenant écrire plus de 65536 méthodes (références) dans votre application.
Quand on dit le nombre de méthodes, cela signifie
méthodes écrites par vous + méthodes Android Framework + tiers méthodes de la bibliothèque (par exemple, Volley, Retrofit, SDK Facebook, etc.).
J'ai lu quelque part dans un post
App Compat 24.2.1 contient 16,5k méthodes
Services Google Play GCM 9.6.1 contient 16,7 Ko de méthodes.
Ainsi, si vous venez d'écrire une simple application Hello world utilisant App Compat 24.2.1, votre application utilise déjà les méthodes 16.7k.
cela dépend de minSdkVersion de votre application
Si minSdkVersion> = 21, vous pouvez l'activer en écrivant multidexEnabled = true
si minSdkVersion <21, vous devrez alors inclure Multidex Compatibily library dans votre dégradé.
En savoir plus sur activation du support multidex
multidex permet à vos applications d’avoir plus de bibliothèques tierces.
Les applications Android sont compilées dans un fichier/des fichiers .dex qui, à leur tour, sont compressés en un seul fichier .apk. Les fichiers .dex ont des bytecodes qui sont utilisés par Dalvik Virtual Machine (DVM).
Vous pouvez en lire plus sur .dex et DVM
Il vous permet de créer des applications avec plus de 64 000 méthodes. Pour plus d'informations, voir ici http://developer.Android.com/intl/es/tools/building/multidex.html
multidex supporte une bibliothèque tierce à votre application
Si minSdkVersion> = 21, vous pouvez l'activer en écrivant multidexEnabled = true Si minSdkVersion <21, vous devrez alors inclure Multidex Compatibily library dans votre diplôme . Voir plus d'informations sur autoriser le support multidex