2015-06-29 48 views
6

我正在研究phonegap/cordova離子應用程序。我正在iOS和Android上測試。主線程上的Firebase同步XMLHttpRequest已棄用

在iOS上一切正常。

但是在Android上,我收到以下消息時,我的看法荷載之一:

同步XMLHttpRequest的主線程已被棄用,因爲 其所帶來的影響最終用戶的體驗。如需更多幫助,請撥打 查詢http://xhr.spec.whatwg.org/

每次我得到這個「警告」 - 我的看法不加載。

之一。LP DFRAME = T & ID的= ... & PW = ...查詢是向/從火力點有以下幾點:?

<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> 

這顯然有XHR作爲async「false」 - 導致此「警告」。

有沒有一種方法可以強制所有Firebase查詢具有異步真實性。 如果這只是一個「警告」,爲什麼頁面應該停止?

請注意,在iOS和桌面上的Chrome和Safari上 - 均按預期工作。

+0

該警告可能與頁面未加載無關。 [XY問題](http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem/66378#66378) – Kato

+0

謝謝@Kato - 會發布更多細節 - 因爲我發現它們。同意,現在看起來很XY-ish ;-) –

+0

我的意思是,再次想到,也許警告可能是相關的。它可能會對最終用戶體驗產生不利影響:)但是我們沒有在其他應用程序或客戶端看到這一點。您是否使用SDK的最新版本? – Kato

回答

0

在我的情況下,這個問題是由於根據離子服務部署文檔中的建議評論cordova.js。

取消註釋即可確保與Firebase的WS連接暢通無阻。爲什麼它應該是超出我的 - 但我已經通過反覆添加和刪除index.html中的include來測試,以便在Android/4.4.4設備上持續複製效果。

希望這對他人有所幫助 - 我花了很長時間才發現這一點!

+0

您可以更具體地瞭解您取消評論和/或評論的代碼行嗎? –

+0

<! - cordova腳本(這將在開發過程中爲404) - > <! - 隱藏使用deploy/hidden作爲每個部署文檔 - > //評論這部分工作,但隨後的XHTTP問題將顯示在Android 4.4上 –

相關問題