2017-07-11 4 views
0

J'utilise progressbar.js Progress Bar dans une application Cordova.La barre de progression JS ne fonctionne pas dans InAppBrowser

Mon application cordova ouvre une page html distante (même réseau, mais à distance de l'appareil) en utilisant le plugin 'inAppBrowser'. Tout fonctionne comme prévu lorsque je débogue/teste dans Ripple, mais lorsque sur l'appareil Android, la barre de progression ne parvient pas à s'initialiser lorsque cette page est affichée dans le 'inAppBrowser'.

J'ai essayé deux appareils Android différents avec le même résultat.

Lorsque la même page avec la barre de progression est affichée sur Android dans le navigateur Chrome normal, cela fonctionne comme prévu. Mon application accède simplement à cette page en utilisant 'inAppBrowser', et c'est là que ça casse.

Tous les autres JS fonctionnent correctement dans les pages vues par 'inAppBrowser', donc c'est quelque chose de spécifique à progressbar.js. Je ne suis pas sûr de savoir comment déboguer celui-ci, car c'est certainement une erreur javascript qui est lancée quelque part, mais je ne peux pas déboguer la page 'inAppBrowser' sur l'appareil Android du tout. (Ou mieux, je ne sais pas comment/si je peux le faire?)

Le débogage à distance Chrome utilise l'exécution de votre code dans Chrome sur l'appareil Android, et c'est là que ma page fonctionne réellement afin que je puisse ' Je ne vois pas comment cela va m'aider.

Un conseil?

Merci

Répondre

0

Inpect avec des outils de développement de chrome chrome://inspect/#devices permettra le débogage à distance d'une page chargée en chrome sur l'appareil Android, donc en supposant que vous utilisez inappbrowser pour charger la page en chrome cela vous permettra de voir ce qui est passe.

+0

Je ne navigue pas de l'application à la page. Je navigue vers la page, en utilisant 'inAppBrowser', à l'intérieur de l'application ... –

+0

Ah ok, j'utilise l'argument '_system', donc il s'ouvre en chrome, j'ai oublié les options pure inappbrowser. – MStoner

0

Après avoir regardé le documentation

il semble que vous pouvez utiliser:

inAppBrowserRef.addEventListener('loaderror', loadErrorCallBack); 

function loadErrorCallBack(params) { 

$('#status-message').text(""); 

var scriptErrorMesssage = 
    "alert('Sorry we cannot open that page. Message from the server is : " 
    + params.message + "');" 

inAppBrowserRef.executeScript({ code: scriptErrorMesssage }, executeScriptCallBack); 

inAppBrowserRef.close(); 

inAppBrowserRef = undefined; 

}