2015-06-29 16 views
6

Sto lavorando su un'app iononica per telefono/cordova. Sto testando su iOS e Android.Firebase XMLHttpRequest sincrono sul thread principale è deprecato

Su iOS tutto funziona bene.

Tuttavia su Android, ricevo il seguente messaggio quando uno dei miei Visto carichi:

sincrono XMLHttpRequest sul thread principale è deprecato a causa della suoi effetti dannosi per l'esperienza dell'utente finale. Per ulteriore assistenza, controlla http://xhr.spec.whatwg.org/.

Ogni volta che ottengo questo "avviso" - la mia vista non viene caricata.

Uno dei .LP DFRAME = t & id = ... & pw = ... query che vengono da/per Firebase ha la seguente:?

<html><body><script> 
function EnvSendPing(destURL) { 
try{ 
var xhr=new XMLHttpRequest(); 
xhr.open("GET", destURL, false); 
xhr.send(null); 
} catch (e) { } 
} 
function EnvDisconnect() { 
EnvSendPing("/.lp?disconn=t&id=294802&pw=LL8E8eo2Rz"); 
} 
if(window.addEventListener) 
window.addEventListener('unload',EnvDisconnect,false); 
else if(window.attachEvent) 
window.attachEvent('onunload',EnvDisconnect); 
</script></body></html> 

che ha chiaramente l'XHR come async "false" - causando questo "warning".

C'è un modo in cui posso forzare TUTTE le query Firebase per avere async vero. Se questo è solo un "avvertimento" perché la pagina dovrebbe bloccarsi?

Nota che su iOS e su Chrome e Safari sul desktop - tutto funziona come previsto.

+0

L'avviso è probabilmente non correlato alla pagina che non si carica. [XY Problem] (http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem/66378#66378) – Kato

+0

Grazie a @Kato - pubblicherò altri dettagli - mentre li scopro. D'accordo, sembra molto XY-ish in questo momento ;-) –

+0

Voglio dire, a pensarci bene, forse l'avviso potrebbe essere rilevante. È possibile che abbia "effetti negativi sull'esperienza dell'utente finale":) Ma non lo vediamo in altre app o client. Sei sull'ultima versione dell'SDK? – Kato

risposta

0

Nel mio caso il problema era dovuto al commento di cordova.js come suggerito dalla documentazione di ionic-service-deploy.

Scompigliandosi, garantisce una connettività WS fluida a Firebase. Perché dovrebbe essere tale è al di là di me - ma ho provato ripetutamente aggiungendo e rimuovendo l'inclusione nel mio index.html per avere l'effetto riprodotto coerentemente sul dispositivo Android/4.4.4.

Spero che questo aiuti gli altri - ho passato molto tempo a scoprirlo!

+0

Puoi essere più preciso su quale riga/i di codice hai decommentato e/o commentato? –

+0

// commentalo per l'implementazione, ma i problemi XHTTP verranno visualizzati su Android 4.4 –

Problemi correlati