1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies. En savoir plus.
  2. Bonjour tout le monde ! Veillez consulter la Politique de forum pour comprendre nos règles, Merci a vous !
    Rejeter la notice

WM Mise à jour automatique

Discussion dans 'Windev Mobile' créé par Man, Mar 22, 2019.

  1. Man

    Man Active Member

    Inscrit:
    Juil 9, 2018
    Messages:
    290
    J'aime reçus:
    67
    Bonjour,
    Je viens ici pour un soucis je développe en WM mais je souhaite que à chaque fois qu'il y a une Mise à jour de mon application Android que mes utilisateurs soient informés :
    - Par notification s'il est connecté sur internet ;
    - lorsqu'il execute l'application, qu'il soit contraint de mettre à jour avant de continuer.
    Voilà donc grosso modo mon problème.
    Je serai preneur de vos solutions
    Merci d'avance.
     
    Tags:
  2. popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,882
    J'aime reçus:
    1,532

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    , il n'est pas possible de contraindre l'utilisateur si celui-ci ne se connecte jamais à internet.
    De plus, même si l'application est sur un store, il est possible de désactiver la mise à jour automatique.
    C'est ce que je fais avec toutes les app de mes appareil.
    Si une app essaie de me forcer la main, je la désinstalle ou la désactive.
     
  3. khaliassas

    khaliassas Active Member

    Inscrit:
    Mar 4, 2019
    Messages:
    446
    J'aime reçus:
    142
    Bonjour,
    pour notre apli mobile,
    elle n'est pas sur un store, mais on utilise un webservice pour checker le num de version.
    et au démarrage de celle ci on vérifie, si nouvelle version on demande si on veut mettre a jour.
    mais rien n’empêche de fermer l'appli si pas de mise a jour.

    mais pour ca faut internet comme le dit

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    .
    pour les notif si tu implemente la notifiaction dans tes applis rien n’empêche d'envoyer a tous tes utilisateurs une notif quand le num de version change.
     
  4. Man

    Man Active Member

    Inscrit:
    Juil 9, 2018
    Messages:
    290
    J'aime reçus:
    67

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    , il n'est pas possible de contraindre l'utilisateur si celui-ci ne se connecte jamais à internet.
    De plus, même si l'application est sur un store, il est possible de désactiver la mise à jour automatique.
    C'est ce que je fais avec toutes les app de mes appareil.
    Si une app essaie de me forcer la main, je la désinstalle ou la désactive.
    Cliquez pour agrandir...

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    qu'est-ce-que je dois faire ?
    car je veux juste quand l'utilisateur lance l'application mobile elle vérifie si les mises à jour sont disponibles si oui met cette application à jour, car c'est une application pour une école d'enseignement supérieure.
    Je ne sais par où commencer
     
  • Man

    Man Active Member

    Inscrit:
    Juil 9, 2018
    Messages:
    290
    J'aime reçus:
    67

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Bonjour,
    pour notre apli mobile,
    elle n'est pas sur un store, mais on utilise un webservice pour checker le num de version.
    et au démarrage de celle ci on vérifie, si nouvelle version on demande si on veut mettre a jour.
    mais rien n’empêche de fermer l'appli si pas de mise a jour.

    mais pour ca faut internet comme le dit

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    .
    pour les notif si tu implemente la notifiaction dans tes applis rien n’empêche d'envoyer a tous tes utilisateurs une notif quand le num de version change.
    Cliquez pour agrandir...

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    merci bien mais quand tu évoques les notifications je vois ça comme mon chien qui regarde trace TV san rien comprendre si tu peux m'orienter à cet effet.
    Merci
     
  • khaliassas

    khaliassas Active Member

    Inscrit:
    Mar 4, 2019
    Messages:
    446
    J'aime reçus:
    142

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    merci bien mais quand tu évoques les notifications je vois ça comme mon chien qui regarde trace TV san rien comprendre si tu peux m'orienter à cet effet.
    Merci
    Cliquez pour agrandir...
    Tu as eu un webinaire a ce sujets sur le site pcsoft.
    Mais grosso modo. Pour les notifications
    Sous iOS ton certificats doit avoir été renseigné comme quoi tu utilise les notifications.
    Sous Android il faut enregistrer sous firebase. Ce qui va te donner une keychaine.

    Après tu peux utiliser les fonctionnalités de notificationenvoie sous windev.

    En ce qui concerne la vérification du numero de version. Tu peux checker dans l'initialisation du projet.
    Si différent récupéré lapk et tu fais lanceappliassocie (attention depuis android8) nécessité de déclarer les autorisations.
    Sous iOS lanceappliassocie(lien itms).
     
  • khaliassas

    khaliassas Active Member

    Inscrit:
    Mar 4, 2019
    Messages:
    446
    J'aime reçus:
    142
    en ce qui concerne les notification :
    - ios :
    - android :

    tu as un exemple complet dans windev mobile appeler "Push Mobile"
    avec un exemple de serveur et un client mobile.

    voici ce que j'ai fait moi pour mon appli
    Code (Windev):

    SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()=Vrai ET webserviceconnecté=1 ALORS
     
        versionprog est chaîne
        versionprog=

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (exeVersion)
     
        v91 est VERSIONResponse
        v91=VERSION()
     
        sversionprogrammeserveur est chaîne
        sversionprogrammeserveur=v91.VERSIONResult
        SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    () ALORS
            sversionprogrammeserveur=versionprog+"§"+versionprog
        FIN
        SI sversionprogrammeserveur="ERREUR" ALORS
           

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("Pb lors de la récupération du numéro de version")
           

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (MoiMême)
        FIN
        <COMPILE SI Configuration="Application iOS">
         
            SI versionprog <>

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (sversionprogrammeserveur,1,"§",DepuisDébut) ALORS
               

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("La version du programme installé n'est pas la bonne")
                     
               

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("itms-services://?action=download-manifest&url=https:/tonserveur/tonappli.plist")

            FIN
         
        <SINON>
         
            SI versionprog <>

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (sversionprogrammeserveur,2,"§",DepuisDébut) ALORS
               

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("La version du programme installé n'est pas la bonne")

                BTN_BOUTON1..Etat=Grisé
                BTN_BOUTON3..Etat=Grisé
                BTN_BOUTON..Etat=Grisé
             
                SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (gsrepertoire_en_cours +"/tonappli.apk")=Faux ALORS
                   

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("Téléchargement de la maj",toastLong,cvMilieu,chCentre)
                   

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("dl_apk",threadNormal,"dl_apk")
                    motif_pak est une Notification
                    motif_pak..Titre = "Téléchargement maj en cours ....."
                   

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("dl_apk", motif_pak)
                 
                SINON
                    installation_apk()
                 
                FIN
                BTN_BOUTON1..Etat=Actif
                BTN_BOUTON..Etat=Actif
                BTN_BOUTON3..Etat=Actif
            SINON
             
                SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (SysRepStockageExterne(1, ssePublic)) +"tonappli.apk")=Vrai ALORS
                    SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (SysRepStockageExterne(1, ssePublic)) +"tonappli.apk")=Faux ALORS
                       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("Ancien apk existant non supprimé",toastCourt,cvMilieu,chCentre)
                    FIN
                FIN
            FIN
        <FIN>
    FIN

     

    j'utilise un service rest qui me renvoie le numero de version.
     
    #7 khaliassas, Mar 22, 2019
    Dernière édition: Mar 22, 2019
    michel et suenodesign aiment ça.
  • Man

    Man Active Member

    Inscrit:
    Juil 9, 2018
    Messages:
    290
    J'aime reçus:
    67
    @

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    en ce qui concerne les notification :
    - ios :
    - android :

    tu as un exemple complet dans windev mobile appeler "Push Mobile"
    avec un exemple de serveur et un client mobile.

    voici ce que j'ai fait moi pour mon appli
    Code (Windev):

    SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()=Vrai ET webserviceconnecté=1 ALORS
     
        versionprog est chaîne
        versionprog=

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (exeVersion)
     
        v91 est VERSIONResponse
        v91=VERSION()
     
        sversionprogrammeserveur est chaîne
        sversionprogrammeserveur=v91.VERSIONResult
        SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    () ALORS
            sversionprogrammeserveur=versionprog+"§"+versionprog
        FIN
        SI sversionprogrammeserveur="ERREUR" ALORS
           

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("Pb lors de la récupération du numéro de version")
           

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (MoiMême)
        FIN
        <COMPILE SI Configuration="Application iOS">
       
            SI versionprog <>

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (sversionprogrammeserveur,1,"§",DepuisDébut) ALORS
               

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("La version du programme installé n'est pas la bonne")
                   
               

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("itms-services://?action=download-manifest&url=https:/tonserveur/tonappli.plist")

            FIN
       
        <SINON>
       
            SI versionprog <>

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (sversionprogrammeserveur,2,"§",DepuisDébut) ALORS
               

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("La version du programme installé n'est pas la bonne")

                BTN_BOUTON1..Etat=Grisé
                BTN_BOUTON3..Etat=Grisé
                BTN_BOUTON..Etat=Grisé
           
                SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (gsrepertoire_en_cours +"/tonappli.apk")=Faux ALORS
                   

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("Téléchargement de la maj",toastLong,cvMilieu,chCentre)
                   

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("dl_apk",threadNormal,"dl_apk")
                    motif_pak est une Notification
                    motif_pak..Titre = "Téléchargement maj en cours ....."
                   

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("dl_apk", motif_pak)
               
                SINON
                    installation_apk()
               
                FIN
                BTN_BOUTON1..Etat=Actif
                BTN_BOUTON..Etat=Actif
                BTN_BOUTON3..Etat=Actif
            SINON
           
                SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (SysRepStockageExterne(1, ssePublic)) +"tonappli.apk")=Vrai ALORS
                    SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (SysRepStockageExterne(1, ssePublic)) +"tonappli.apk")=Faux ALORS
                       

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("Ancien apk existant non supprimé",toastCourt,cvMilieu,chCentre)
                    FIN
                FIN
            FIN
        <FIN>
    FIN

     

    j'utilise un service rest qui me renvoie le numero de version.
    Cliquez pour agrandir...

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    cool pour ta promptitude, comme tu l'as si bien tu utilises un webservice propre à toi parce que tu as un serveur personnalisé. Le problème c'est moi je veux mettre l'apk à play Store, comment récupérer le numéro de version en ligne et le comparer à celui à celui de l'utilisateur pour lui dire il doit mettre à jour ou bien... ?
    ça c'est ma préoccupation majeure
    Comme je l'ai expliqué à mon entame l'utilisateur qui ici est l'étudiant doit obligatoirement mettre à jour son application android s'il veut toujours bénéficier les services qu'offrent son établissement (consultation des notes, programmation des cours, emplois de temps...)
     
  • popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,882
    J'aime reçus:
    1,532
    voir ma réponse

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

     
  • Man

    Man Active Member

    Inscrit:
    Juil 9, 2018
    Messages:
    290
    J'aime reçus:
    67

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    voir ma réponse

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Cliquez pour agrandir...

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Bonsoir je reviens vers une fois dans lien, il n'explique rien sauf redirection vers une application android et tu demandes qu'on doit utiliser httprequête, mais alors comment ?
    si tu peux à ta convenance nous faire un petit tuto ça remettrait les gens comme moi à la ligne.
    Merci
     
  • khaliassas

    khaliassas Active Member

    Inscrit:
    Mar 4, 2019
    Messages:
    446
    J'aime reçus:
    142

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Bonsoir je reviens vers une fois dans lien, il n'explique rien sauf redirection vers une application android et tu demandes qu'on doit utiliser httprequête, mais alors comment ?
    si tu peux à ta convenance nous faire un petit tuto ça remettrait les gens comme moi à la ligne.
    Merci
    Cliquez pour agrandir...
    Que lapk soit sur un serveur privé ou playstore ne change pas ma solution pour récupérer le numéro de versions.
    En effet seul le téléchargement de lapk change.
    Tu as juste à ouvrir la page du playstore a la place.

    Après tu peux ouvrir une connexion à ta base hfsql. Si tu ouvre les bon ports.

    Tu peux aussi creer un petit fichier texte a placer sur un hébergement.
    Ça dépend c'est vrai beaucoup de ton infrastructures.
     
    #11 khaliassas, Mar 22, 2019
    Dernière édition: Mar 22, 2019
  • khaliassas

    khaliassas Active Member

    Inscrit:
    Mar 4, 2019
    Messages:
    446
    J'aime reçus:
    142

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    Bonsoir je reviens vers une fois dans lien, il n'explique rien sauf redirection vers une application android et tu demandes qu'on doit utiliser httprequête, mais alors comment ?
    si tu peux à ta convenance nous faire un petit tuto ça remettrait les gens comme moi à la ligne.
    Merci
    Cliquez pour agrandir...

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!


    Avec httpdonneresultat tu peux Analyser ta page.
     
  • khaliassas

    khaliassas Active Member

    Inscrit:
    Mar 4, 2019
    Messages:
    446
    J'aime reçus:
    142
    Pour info
    Avec du code complètement pomper (qui a dit honteusement) sur l'aide pcsoft
    Code (Windev):

    req est un chaîne
    ResLancement est chaîne
    req="https://play.google.com/store/apps/details?id="
    sIdappli est chaîne="com.estrongs.android.pop"
    req+=sIdappli
    // Lancement d'une requête sur un serveur sécurisé
    ResLancement =

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (req)
    // Si erreur rencont4rée
    SI ResLancement = Faux ALORS
        // Selon le type d'erreur rencontré
        SELON

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (errCode)
        // Certificat invalide
            // ou ne provenant pas d'une société connue
            CAS httpErreurCertificatInvalide :
                // Ignorer le certificat ?
                SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("Alerte de sécurité détectée !", ...
                    "Certificat invalide.", ...
                    "Ignorer ce certificat ?") = Oui ALORS
                    HTTP.IgnoreErreur = httpIgnoreCertificatInvalide
                    // Nouveau lancement de la requête
                    // en ignorant cette erreur
                   

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (req)
                FIN
            // Date du certificat non-valide ou expiré
            CAS httpErreurCertificatExpiré :
                // Ignorer la date du certificat ?
                SI

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ("Alerte de sécurité détectée !", ...
                    "Date du certificat invalide ou expiré.", ...
                    "Ignorer cette date ?") = Oui ALORS
                    HTTP.IgnoreErreur = httpIgnoreCertificatExpiré
                    // Nouveau lancement de la requête
                    // en ignorant cette erreur
                   

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (req)
                FIN
        FIN
    FIN
    ResCode est une chaîne =

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    ()
    ResCode =

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    (ResCode)
    [\code]

    J'ai ça.
    Donc une simple étude de ligne jusqu'au numéro de version ...et tu as ton num rechercher.
     

    Fichiers attachés:

  • popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,882
    J'aime reçus:
    1,532
    j'ai fais la même réponse sur mon autre lien.

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    , évite de poser la même question sur 2 post.
    merci
     
  • popoy

    popoy Well-Known Member
    MEMBRE WX

    Inscrit:
    Fev 23, 2018
    Messages:
    2,882
    J'aime reçus:
    1,532

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    , tu es trop gentil de mâcher ainsi le travail.
     
  • Partager cette page

    Chargement...