20 décembre 2018
publié par 

Sous Android, l'installation d'une application est contenue dans un fichier apk. C'est un format de fichier standard défini par Google. Ce n'est pas votre application, c'est l'installation de votre application.

 

Depuis la version 24 de WINDEV Mobile, les applications déployées sous Android sont disponibles pour :

  • les processeurs ayant un jeu d'instructions ARM en 32 bits
  • les processeurs ayant un jeu d'instructions ARM en 64 bits
  • les processeurs ayant un jeu d'instructions X86 en 32 bit

(Il n'existe pas encore de références d'appareil Android avec un processeur ayant un jeu d'instructions X86 64 bits).

 

Les apk générés contiennent donc les librairies nécessaires à son installation, quelque soit la plateforme cible. C'est la raison de l'augmentation de taille de l'apk généré. En effet dans les versions précédentes, l'apk contenait uniquement une version ARM 32 bits de l'application.


Important : Cela ne modifie pas la taille de l'application installée !


En effet, lors de l'installation, Android va choisir dans l'apk les librairies correspondant au jeu d'instructions attendues par le mobile. Par exemple, sur un processeur ARM 64 bits, Android n'installera que les librairies ARM 64 bits.

 

- Mise à jour 8/1/2019 -

Si dans un cas particulier un APK doit être généré en limitant les libraries embarquées, il est possible d'utiliser la solution suivante (un choix dédié dans l'assistant de génération sera ajouté dans une prochaine version) :

  • créer un fichier vide avec un éditeur texte, par exemple un fichier nommé "lib.so". Il va servir à simuler une librairie native dans une architerture donnée.
  • dans l'assistant de génération, à l'étape "Intégration des librairies", dans le cadre "Intégration des librairies natives", ajouter le fichier "lib.so",
  • dans la colonne "ABI", spécifier pour le fichier "lib.so" l'architecture qui doit être incluse dans l'APK généré. Par exemple en sélectionnant l'architecture "arm64-v8a" pour le fichier "lib.so", seules les librairies ARM 64 bits seront embarquées dans l'apk.

- Mise à jour 15/10/2019 -

"App Bundle" le nouveau format de publication pour réduire et optimiser la taille en fonction des appareils est proposé à partir de la version 25 de WINDEV Mobile :

- Mise à jour 25/11/2019 -

 

En complément du support du format App Bundle (AAB), une nouvelle étape "Flotte d'appareils" est également proposée dans l'assistant de génération de l'application Android de WINDEV Mobile 25. Dans le cas d'un déploiement dans un store privé, ou sur une flotte d'entreprise, elle permet de diviser pratiquement par 3 la taille de l'APK. Très appréciable lors du test "Go" sur le poste de développememt, puis dans tous les process qui nécessitent le transfert de l'APK !

 

 

< Retour

17 commentaires

Guy Fongue
20/12/2018 - 11:40 - Répondre
il serait interessant de proposer en option la possibilité de générer des apk comme en version 23 je penses

Loic HAMEL
20/12/2018 - 11:48 - Répondre
Vous avez raison, j’ai transmis une suggestion à l’équipe de développement pour donner la possibilité de générer 3 apk différents pour des installations spécifiques. Merci pour cette suggestion.

Olivier Kinampinan
26/07/2019 - 20:04 - Répondre
Bonjour, J'aimerai savoir que devons nous faire, nous autres qui possédons des versions antérieures à la version 24. Moi par exemple j'ai la version 22. Merci!!

IANEZ
21/12/2018 - 11:15 - Répondre
Autre possibilité : se baser sur la description de la (ou des ) plateformes. Actuellement cela ne concerne que les résolutions d'écran mais il suffirait d'ajouter le type de processeur. Sinon, ce que nous faisons en attendant mieux, c'st que nous modifions manuellement l'APK en ne gardant que les librairies nécessaires car nous n'utilisons que des tablettes Android ARM 64 bits. Merci.

Guillaume BAYLE
29/07/2019 - 08:45 - Répondre
Bonjour, le niveau d'API cible des applications WINDEV Mobile est déterminé en fonction des spécifications de Google en vigueur, lors de la sortie de la version de WINDEV Mobile utilisée. WINDEV Mobile 22 (2016) utilise donc le "TargetSdkVersion" 24 (Android 7), et WINDEV Mobile 24 le "TargetSdkVersion" 28 (Android 9). N'hésitez pas à contacter notre support pour tout détail sur ce sujet. Bons développements !

Loic HAMEL
21/12/2018 - 11:38 - Répondre
Il faut malgré tout relativiser l’augmentation de taille. Tout dépend des fonctionnalités utilisées dans l’application. La taille du Framework va de 700 Ko a 20 Mo. On parle pas de taille énorme non plus.

José IANEZ
21/12/2018 - 11:45 - Répondre
En complément : Il est important je pense de pouvoir conserver des tailles d'APK cohérentes surtout lorsque nous avons une flotte importante d'utilisateur mobiles qui mettent à jour l’application régulièrement en téléchargeant l'APK par FTP et souvent avec un connexion GSM data et non en WiFi. Les forfaits se trouvent considérablement pénalisés, sans compte le temps de téléchargement surtout dans des zones où la 3G n'est pas toujours présente... Pour info, l'APK de notre application généré en WM19 faisait 3,4 Mo, en WM21 il faisait 4,3 Mo, en WM23 il est passé à 11,1 Mo et en WM24 il atteint les 26,7 Mo !! Une telle taille n'est pas logique pour une application mobile. Donc au minimum que seules les librairies indispensables soient intégrées à l'APK et mieux encore, que les seules librairies utilisée par l'application soient intégrées.

José IANEZ
21/12/2018 - 11:53 - Répondre
Juste pour compléter encore : Entre la version 21 et la version 24, notre application n'a pas changé. C'est exactement la même. Donc si elle s'installait avec un APK de 4,3 Mo et qu'elle fonctionnait, elle devrait pouvoir continuer en version 24 à s'installer avec une taille identique ou très peu différente comme entre la version 19 et 21 par exemple ou l'APK n'a grossit que de 1Mo...Là on passe de 4,3 Mo à 26.7 Mo quand-même, plus de 6x plus !

José IANEZ
08/01/2019 - 10:38 - Répondre
Bonjour Je viens de tester cette astuce dans un tout petit projet qui jusqu'à présent générait un APK de 3Mo, et curieusement l'APK fait maintenant 13Mo ?! Je n'ai pourtant fait que suivre à la lettre les indications ci-dessus. Par contre, j'ai coché la case "Intégrer les librairies HFSQL dans l'application" car sur la copie d'écran c'est le cas alors que par défaut ça ne l'est pas. Je pense que c'est pour cette raison que la taille de l'APK a augmenté...il faudrait préciser de ne pas le faire je pense. Merci.

Loic HAMEL
08/01/2019 - 14:35 - Répondre
Bonjour, Effectivement, si vous n'utilisez pas HFSQL, il ne faut pas intégrer les librairies. Par contre si vous l'utilisez, il faut les intégrer.

Vizer Paul
23/06/2019 - 18:57 - Répondre
Quelqu'un a essayé de publier récemment une app sur le play store avec les apk générés par windev mobile 24? Il parait que les les apk ne sont plus acceptés par Google sauf s'ils sont converti au format app bundle

Guillaume BAYLE
24/06/2019 - 08:32 - Répondre
Bonjour, le format Android App Bundle est maintenant conseillé par Google, mais absolument pas obligatoire pour publier une application. Ce format sera bien évidement ajouté à toutes les possibilités déjà proposées par WINDEV Mobile. N'hésitez pas à contacter notre support pour tout renseignement complémentaire sur ce point : https://www.pcsoft.fr/st/ecrst.htm. Bons développements !

iceuponfire
15/10/2019 - 17:59 - Répondre
Ce jour le message suivant apparait sur le play store "utilisez le format Android App Bundle" avec une application compilée en version 24 patch 06F240077f. Cela semble donc maintenant obligatoire, merci de nous dire comment procéder.

Thierry Balderacchi
24/10/2019 - 13:20 - Répondre
Bonjour, Est il possible de publier une appli au format instant app ? Dernière version wd24 ou 25 ? Merci de votre retour

Guillaume BAYLE
24/10/2019 - 14:47 - Répondre
Bonjour, cette solution évoquée il y a quelques années par Google n'est pas mise en avant, et il n'y a pas de visibilité sur sa pérennité. Donc dans l'immédiat cette possibilité de génération n'a pas été incluse dans WINDEV Mobile. Le sujet reste bien sûr sous surveillance. N'hésitez pas à détailler votre besoin à notre support afin que nous puissions vous orienter (cf email envoyé en parallèle). Bons développements !

Condé karamoko
31/05/2020 - 20:06 - Répondre
Bonjour je n'arrive pas a publier mon application developper en windev mobile 24 a cause de la taille de l'apk qui est generé. Que doit - je faire pour resoudre le problème

Guillaume Bayle
03/06/2020 - 11:53 - Répondre
Bonjour, vous pouvez utiliser une ancienne version pour l'installation directement sur vos appareils, sans passer par le Store. Pour déployer via le Store de Google, la version 25 est requise puisqu'elle intègre toutes les évolutions demandées par Google. N'hésitez pas à contacter notre support pour tout renseignement complémentaire dont vous pourriez avoir besoin sur ce sujet. Bons développements !

Publier un commentaire : 
Votre adresse email ne sera pas publiée