Partage
  • Partager sur Facebook
  • Partager sur Twitter

[Android Kivy] Déploiement d'une appli Android

Sujet résolu
    19 mars 2025 à 13:10:54

    Bonjour à tous,

    J'ai développé une application Python du jeu du tarot sur ordinateur qui fonctionne bien pour l'instant (le dépôt correspondant est ici : https://github.com/Julien-Livet/Tarot).

    J'ai regardé pour la porter sur Android, pour cela j'ai basculé les utilisations de PyQt par Kivy et ça ne rend pas trop mal (le dépôt correspondant est ici : https://github.com/Julien-Livet/TarotAndroid).
    J'ai réussi à générer le fichier APK avec buildozer et à le déployer sur mon téléphone.
    Le premier écran s'affiche bien avec le choix du nombre de joueurs, par contre l'écran suivant s'affiche rapidement avant de planter (ce qui n'est pas le cas sur l'émulation ordinateur).
    J'ai essayé de trouver des erreurs rapportées dans logcat mais rien à signaler. Je suis donc bloqué.

    Comment feriez-vous pour déboguer une telle application ? Je ne sais pas si c'est le bon endroit pour poster ce sujet mais je tente quand même.

    Merci pour vos retours,

    P'tit Ju

    -
    Edité par P'tit Ju 19 mars 2025 à 13:11:19

    • Partager sur Facebook
    • Partager sur Twitter
    Le premier et meilleur outil de l'Homme reste encore et toujours son cerveau.
      19 mars 2025 à 16:09:01

      P'tit Ju a écrit:

      Le premier écran s'affiche bien avec le choix du nombre de joueurs, par contre l'écran suivant s'affiche rapidement avant de planter (ce qui n'est pas le cas sur l'émulation ordinateur).

      Pas grand monde ira monter un environnement pour reproduire le soucis: ca prend du temps et si on s'y lance, il va ensuite falloir se cogner vos 1500 lignes de code. Avant de demander de l'aide, réduire le code a un minimum qui permette de reproduire le soucis est un plus.

      Comme j'ai lu votre mouture Tk, vous rencontrez le même soucis: threads et GUI ne coexistent pas si facilement et, pour autant qu'on ait besoin de threads, il faut les utiliser comme l'impose le GUI. En général, le GUI dans le thread principal et toute opération de mise à jour de l'interface faites dans ce thread là. Si on ne s'y applique pas, on peut avoir des "race conditions" qui aboutissent a un état incohérent et ça ne plante pas tout le temps...

      Et dans votre cas, Tk, Qt et Kivy ont des approches différentes (Qt étant le plus facile à utiliser car signal et slots sont "threads compatibles"), à vous d'ouvrir une documentation, comprendre comment ça se met en place et corriger votre code.

      -
      Edité par mps 19 mars 2025 à 16:42:26

      • Partager sur Facebook
      • Partager sur Twitter
        19 mars 2025 à 16:45:36

        Ok. J'ai pu trouver l'erreur avec logcat finalement. Mes images n'ont pas l'air d'être incluses dans l'APK, je cherche comment faire.
        • Partager sur Facebook
        • Partager sur Twitter
        Le premier et meilleur outil de l'Homme reste encore et toujours son cerveau.
          24 mars 2025 à 14:49:06

          L'ajout d'un fichier "pyproject.toml" en plus de "setup.py" à la racine du projet semble avoir résolu le problème.
          • Partager sur Facebook
          • Partager sur Twitter
          Le premier et meilleur outil de l'Homme reste encore et toujours son cerveau.

          [Android Kivy] Déploiement d'une appli Android

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          • Editeur
          • Markdown