Dépannage des problèmes courants dans les applications mobiles hybrides Oracle JET

Lors du déploiement de votre application mobile hybride avec Oracle JET, les problèmes les plus courants peuvent être dus à des exceptions d'exécution, à des erreurs de configuration et à des problèmes de réseau.

Problème 1 : Echec de la construction d'Ojet

Lorsque vous travaillez derrière un pare-feu d'entreprise, vous pouvez recevoir des messages indiquant que votre build a échoué après l'exécution d'une commande ojet build ou ojet0- serve.

Si vous êtes derrière un pare-feu d'entreprise, vérifiez que vous avez correctement configuré les paramètres de proxy npm.

Problème 2 : Impossible de lancer l'application mobile hybride dans l'émulateur de système d'exploitation mobile

Vous pouvez créer votre application mobile hybride, mais découvrez plus tard que vous ne pouvez pas la tester dans un émulateur de système d'exploitation mobile.

Par exemple, les journaux de la console peuvent indiquer que l'application se bloque dans un état "en attente" permanent :

Running "serve" task
Running "customServe" task
Invoking cordova serve
Static file server running on: http://localhost:8090 (CTRL + C to shut down)Invoking cordova run
Starting watch
Running "watch" task
Waiting...

Ce problème est courant lors de l'exécution de la commande ojet serve avant le démarrage de l'émulateur. Même si ojet tente de démarrer l'émulateur, certaines commandes risquent de ne pas s'exécuter pendant le démarrage de l'émulateur. Pour éviter ce problème :

  • Démarrez toujours l'émulateur en premier.

  • N'indiquez pas de paramètre de destination pour la commande ojet serve. L'application sera déployée vers l'émulateur ouvert/par défaut.

  • Une fois l'émulateur démarré, exécutez la commande ojet serve.

  • Assurez-vous d'avoir exécuté ojet build avant une commande ojet serve.

Problème 3 : Exécution dans un problème CORS lors du débogage

Parfois, votre application ne peut pas se connecter à un middleware mobile, tel qu'Oracle Mobile Hub, ni effectuer l'authentification à l'aide d'un débogueur actif d'émulateur.

Pour éviter cela, utilisez le paramètre ojet --no-livereload pour désactiver la fonctionnalité de rechargement en direct lors du déploiement de l'application :

ojet serve --platform=android   --no-livereload=true

Problème 4 : LiveReload ne fonctionne pas sur un périphérique physique

Le fait de ne pas pouvoir servir un périphérique sur lequel LiveReload est activé est un problème connu.

Pour contourner ce problème, développez le contenu de l'application dans un navigateur à l'aide de l'indicateur --browser :

ojet serve android --browser

Ensuite, utilisez LiveReload dans l'émulateur. Notez que ce processus est plus lent sur un émulateur que sur un périphérique réel :

ojet serve 

Pour effectuer un test à l'aide d'un périphérique physique, vous devez désactiver LiveReload :

ojet serve android --device --no-livereload

Remarques :

Pour afficher la liste de toutes les options disponibles pour la commande ojet serve, entrez ojet help serve.