Qu'entend-on par "multiDexEnabled true" dans Android? Pourquoi utilisons-nous cela? Quel est l'effet s'il est activé?
Réponses
Trop de publicités?Application Android (APK) fichiers contiennent des exécutables fichiers bytecode dans la forme de Dalvik Executable (DEX), les fichiers qui contiennent le compilé code utilisé pour exécuter votre application. Le Dalvik Executable limites de spécification le nombre total de méthodes qui peuvent être référencés dans une seule DEX fichier à 65 536, y compris Android cadre des méthodes, des méthodes de bibliothèques, et les méthodes dans votre propre code. Aller au-delà de cette limite nécessite que vous de configurer votre application de processus de génération pour générer plus d'un DEX fichier, connu comme un multidex de configuration.
Vous devriez lire le guide officiel de la ligne sur la création d'Applications avec Plus de 64 ko Méthodes
Les applications Android par défaut ont SingleDex de soutien qui limite votre demande seulement 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.
Mais je ne pourrai jamais écrire 65536 méthodes!
Quand nous disons que le nombre de méthodes, cela signifie
méthodes écrites par vous - + Android Cadre des méthodes de + de Tiers de la bibliothèque (par exemple, de Volley, de Rénovation, Facebook SDK, etc) des méthodes.
J'ai lu quelque part dans un post que
App Compat 24.2.1 contient 16.5 k méthodes
Google Play Services GCM 9.6.1 contient 16.7 k méthodes.
Donc, si vous avez écrit un simple Hello world ' application App Compat 24.2.1, alors votre demande est déjà 16.7 k méthodes.
Comment faire pour activer multidex soutien
il dépend minSdkVersion de votre application
Si minSdkVersion >= 21, alors vous pouvez l'activer par écrit multidexEnabled = true
si minSdkVersion <21 alors vous aurez à inclure Multidex assurer la compatibilté de la bibliothèque dans votre gradle.
En voir plus sur l'activation multidex soutien
L'avantage de multiDex
multidex permet à vos applications d'avoir plus de bibliothèques tierces.
Plus sur .dex fichiers
Les applications Android sont compilés dans un .dex de fichiers/les fichiers qui à son tour zippée pour un seul .fichier apk. .dex fichiers ont bytecode qui sont utilisés par la Machine Virtuelle Dalvik(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