web-dev-qa-db-fra.com

Différence entre les apks de debug et release

Je connais aussi bien Android que le studio Android . D'après mon expérience dans Visual Studio, lorsque nous testons le fichier .exe sur un autre ordinateur, nous copions le dossier d'édition et le fichier .exe.

Mais dans le studio Android, mes collègues testent l'apk de débogage en le copiant et en le déployant sur d'autres systèmes utilisant une clé USB. semble fonctionner aussi . Puis-je savoir quelle est la conséquence du déploiement de cette version? La version publiée est-elle pertinente uniquement à des fins de Play Store?

Quelle est la différence technique/conséquence autre que cette version de débogage contient des informations de débogage qui peuvent la rendre lente ou volumineuse?

19
user2454516

Une différence importante est que ProGuard (réduction de code) est généralement exécuté sur les APK de version, ce qui détecte et supprime le code inutilisé afin de réduire la taille de l'APK.

De Réduisez votre code et vos ressources :

Sachez que la réduction de code ralentit le temps de génération, vous devriez donc éviter si possible de l’utiliser sur votre version de débogage. Cependant, il est important que vous activiez la réduction de code sur votre APK final utilisé pour les tests, car cela pourrait introduire des bogues si vous ne personnalisiez pas suffisamment le code à conserver.

Vos collègues sont probablement en train de tester le type de construction de débogage pour gagner du temps, car il peut prendre beaucoup plus de temps pour générer l'APK publié par opposition au APK de débogage.

10
prfarlow

Les principales différences sont le drapeau de débogage et les clés de signature:

  • Pour les versions de débogage, l'apk sera signé avec les clés de signature de débogage par défaut avec l'indicateur de débogage activé.

  • Pour les clés de version, vous devrez spécifier explicitement les clés avec lesquelles signer et l'indicateur de débogage sera désactivé afin qu'il ne puisse pas être débogué.

  • Proguard peut être activé pour les versions de version. (également pour les versions de débogage mais non conseillées). Cette étape doit être effectuée explicitement et est fausse par défaut.

Remarque: ces éléments peuvent être modifiés dans votre build.config et vous pouvez choisir la permutation et la combinaison de votre choix.

La différence principale (si spécifié autrement dans le build.gradle) entre une version de débogage et une version de publication correspond à la clé avec laquelle ils sont signés. La plupart des canaux de distribution d'applications souhaiteraient [seulement] qu'une application soit signée avec une clé de version pour authentifier le développeur. Sinon, il n'y a pas de différences.

Une version validée peut également déclencher d'autres options, telles que l'obscurcissement du code et le fractionnement, recherchez-les.

Cependant, de nombreux changements peuvent être apportés entre ces deux versions. Ceux-ci devraient être spécifiés dans votre build.gradle, le cas échéant. Donc, vous devriez garder un oeil là-bas.

0
Shaishav