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.

< Retour

12 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 !

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


© 2019 PC SOFT. Tous droits réservés. Réalisé  avec WEBDEV