PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV Mobile 2024 → installation automatique d'un package APK
installation automatique d'un package APK
Débuté par Jeandu69, 04 déc. 2014 23:32 - 17 réponses
Membre enregistré
283 messages
Popularité : +4 (4 votes)
Posté le 04 décembre 2014 - 23:32
Je souhaite exécuter l'installation d'un package apk sur unt tablette.
En fait l'application vérifie sur un site FTP s'il y a une version récente de l'application qui est en cours d'exécution.
Le package se copie alors dans un répertoire (/sdcard/Download par exemple) et je souhaite que le .apk s'exécute comme si j'avais cliqué dessus depuis l'explorateur de la tablette. En Windev il suffit de faire un Lanceappli... Mais en Windev Mobile comment fait-on ? car la fonction Lanceappli n'existe pas.
Merci d'avance pour votre aide.
Posté le 05 décembre 2014 - 10:03
Regarde une des fonctions java de la LST 85 Android AppBox Installe un apk a partir d'une url
Membre enregistré
283 messages
Popularité : +4 (4 votes)
Posté le 05 décembre 2014 - 18:12
OK merci pour l'info je vais regarder ça.
Posté le 05 décembre 2014 - 19:25
Bjr,

Jeandu69 a formulé la demande :
> OK merci pour l'info je vais regarder ça.

LanceAppliAssociée(ComplèteRep(SysRepCarteStockage())+"Download/CTC-Tournee.apk")

J'ai ca quand je mets a jour mon appli mobile.
tu fais suivre d'un finprogramme, et voila

a plus

--
-------------------------------------------------------------
www.ctc-soft.com
Gestion biblo-documentaire (free-share)
Comptabilité shareware
Logiciels de Gestion de saisie terrain
Spécialisé Tournées de boulangers
-------------------------------------------------------------
Posté le 05 décembre 2014 - 21:56
Bonjour à toutes et à tous.

Ce n'est pas sorcier !!!
Mais j'ai pas mal galéré pour y arriver, lol.
Et principalement concernant le répertoire de réception de l'apk, à cause des droits gérés par android.
J'ai donc créer un répertoire accessible:

gRepInstallAPK est chaîne = "/mnt/sdcard/Download/MonInstall"
SI fRépertoireExiste(gRepInstallAPK)=Faux ALORS
fRepCrée(gRepInstallAPK)
FIN

Ensuite un FtpRécupère déposera l'appli apk dans ce répertoire.

Et pour finir:

LanceAppliAssociée(gRepInstallAPK +["/"]+"MonAppli.apk")
Multitâche(10)
FinProgramme()

Android prend la main en proposant l'installation de l'appli et ensuite son ouverture.

En espérant t'avoir aidé.

JMF
Membre enregistré
283 messages
Popularité : +4 (4 votes)
Posté le 06 décembre 2014 - 17:36
Merci pour toutes ces infos.
je vais essayer ainsi et je vous tiens informé.
Membre enregistré
156 messages
Popularité : +3 (3 votes)
Posté le 04 juillet 2017 - 13:37
Bonjour,

Désolé de déterrer ce post, mais je souhaitais faire des mises à jour automatiques de l'app sans passer par le Play Store de Google qui nécessite certaines manipulations de l'utilisateur.
Or avec cette méthode on a quand même le message "Voulez-vous installer une mise à jour ..." et pour ma part malgré la réponse positive cela échoue avec le message "Application non installée" ...

Une idée ?

Cdt,
François
Membre enregistré
283 messages
Popularité : +4 (4 votes)
Posté le 05 juillet 2017 - 22:46
Bonsoir François,
Finalement j'ai réussi a automatiser la mise à jour de l'applicatif mais il y a quand même une ou deux questions à laquelles il faut répondre (il n'y a qu'à accepter à chaque fois) et l'application se met à jour très simplement.
Pour cela j'utilise un site FTP sur lequel est déposé l'apk à mettre à jour et en faisant un "LanceappliAssocié" cela fonctionne bien.
C'est en place depuis 2 ans et je n'ai jamais eu ce genre de problème.

Cdt
Jean
Message modifié, 05 juillet 2017 - 22:47
Membre enregistré
156 messages
Popularité : +3 (3 votes)
Posté le 06 juillet 2017 - 13:41
Bonjour Jean,

Je ne sais pas ce qui bloque, mais j'ai bien le fichier APK téléchargé (variable du fichier gFichierInstallAPK)

Un Ffichierexiste montre qu'il est bien présent.

Avec ensuite les instructions
LanceAppliAssociée(gFichierInstallAPK)
Multitâche(10)
FinProgramme()

Le "LanceAppliAssociée" fait bien apparaître la fenêtre demandant si l'on veut installer ou pas la mise à jour. En cliquant installer, l"installation démarre puis aussitôt le message "Application non installée". Avez-vous rencontré ce problème ?

François
Membre enregistré
66 messages
Popularité : +6 (6 votes)
Posté le 06 juillet 2017 - 14:21
Bonjour

voila ce que je fais et qui marche , encore testé aujourd'hui suite à une mise à jour :

SI test=Vrai
// apk
qq=ComplèteRep(SysRepStockageExterne(1,ssePublic))+nfic
tt=ComplèteRep(SysRepStockageExterne(1,ssePublic))+Majuscule(nfic)
SI FTPRécupère(IDConnexion,nfic,qq,"proc_majapk") ALORS
LanceAppliAssociée(tt)
FinProgramme()
SINON
Erreur("Trf .apk impossible")
FIN
//
FIN


par contre , il faut que le nom du fichier APK (tt dans mon cas ) soit en majuscule ??, peut-être parce que mon serveur FTP est sous linux
proc_majapk est pour activer une jauge

Bon Courage
Membre enregistré
156 messages
Popularité : +3 (3 votes)
Posté le 06 juillet 2017 - 15:46
Bonjour,

J'ai tout comme vous, tout se passe bien, mais j'ai l'impression que le "LanceAppliAssociée" qui fait bien apparaître la fenêtre demandant si l'on veut installer ou pas l'APK, ne permet pas de faire installer l'application sur elle-même ?
C'est pour cela qu'il y aurait le message "Application non installée" ?
Y a-t-il des droits particuliers à paramétrer ?

François
Membre enregistré
283 messages
Popularité : +4 (4 votes)
Posté le 07 juillet 2017 - 08:08
Perso, je n'ai rien paramétré sur la tablette.
Il suffit juste de confirmer l'installation et rien d'autre à faire.
Membre enregistré
156 messages
Popularité : +3 (3 votes)
Posté le 07 juillet 2017 - 11:14
Bonjour,
ce qui est bizarre c'est que je peux procéder au téléchargement et a l installation depuis mon appli d'un autre apk d'appli windev present sur la tablette mais l'install echoue si je veux me mettre jouir moi même ...
Membre enregistré
156 messages
Popularité : +3 (3 votes)
Posté le 15 août 2017 - 16:26
Je réponds à moi-même ...
Le message "Application non installée" s'affiche si on tente de mettre à jour une app avec un code inférieur à celui de l'exécutable actuel !
Membre enregistré
283 messages
Popularité : +4 (4 votes)
Posté le 16 août 2017 - 12:38
C'est bon à savoir...
En fait j'ai toujours fait des mises à jour avec un N° de version supérieur à celle installée...
Membre enregistré
13 messages
Posté le 17 septembre 2018 - 15:13
Pokedev a écrit :
Je réponds à moi-même ...
Le message "Application non installée" s'affiche si on tente de mettre à jour une app avec un code inférieur à celui de l'exécutable actuel !


Hello, que veut dire un code inférieur à celui de l'exécutable actuel ?
Merci
Membre enregistré
1 message
Posté le 12 octobre 2018 - 15:01
Bonjour,

Il s'agit du numéro de version de l'application, que vous pouvez définir lors de la génération de votre application

--
============================================================
Mickael
Staff tactique
24PM - Agence de développement stratégique coopérative
www.24pm.be
Membre enregistré
4 messages
Posté le 14 janvier 2020 - 11:48
Bonjour à tous,

J'ai été confronté au même problème alors que j'avais déjà fait ça une fois et que cela fonctionnait très bien, j'avais donc repris le même processus, à savoir un LanceAppliAssociee puis un FinProgramme.
Le truc c'est que je n'avais aucune erreur quand j'ai recodé cette fonctionnalité pour un autre projet, il ne se passait tout simplement rien.

Le souci vient de la version d'Android car Google a modifié ses conditions de sécurité : il faut à partir d'Android 8, Oréo, indiquer qu'elles sont les applications qui sont autorisées à lancer l'installation d'applications d'origines inconnues.

Voir l'image suivante :




Une fois la permission accordée plus de problème de mise à jour.

--
Je penche donc je suis, ...