2013-03-13 51 views
1

我正在爲使用科爾多瓦的iPad應用程序構建內容。由於該應用程序已經構建並由CMS填充,因此我無法添加任何擴展程序或插件或模塊或任何內容(這似乎很重要)。我正在構建的內容幾乎完全是由視頻驅動的,基本上我有一堆由tap事件觸發的<video>標籤。正如我所說,這些視頻都是從CMS加載的,不包含在應用程序有效載荷本身中。科爾多瓦iPad應用程序 - 視頻失速

大多數情況下,它可以正常工作,但偶爾會有視頻開始播放,並且會在一半左右停頓。我的視頻文件不是很大,只有13秒左右,大約700kb左右。

當視頻檔,以下錯誤被記錄到控制檯:

Took background task assertion (5) for playback stall 
Ending background task assertion (5) for playback stall 

括號中的數目將變化。

我對這是什麼意思並沒有很好的認識,當談到Xcode/Cordova世界時,我幾乎是一個完全新手 - 前端開發是我的事,但科爾多瓦的世界是新的對我來說。我無法弄清楚是什麼原因造成的,它似乎是隨機的。我假設它可能是一個比特率/帶寬的事情,但這沒有任何意義,因爲當一個視頻被觸發時,我會檢測到它是readystate以便在播放之前等待它加載,所以理論上它應該是完全的在開始播放之前已加載。

任何解決方案或策略嘗試?我有點茫然,當搜索特定的錯誤信息時,互聯網和谷歌搜索沒有太大的幫助。

+2

這些錯誤來自比瀏覽器/ WebUIView更深的堆棧。他們通常的原因是網絡無法保持緩衝區填滿。 您指出您正在使用'readystate'來檢查預加載,但這在移動Safari中不可靠/不可靠。看看http://stackoverflow.com/questions/11633929/readystate-issue-with-html5-video-elements-on-ios-safari和http://developer.apple.com/library/safari/#documentation /AudioVideo/Conceptual/Using_HTML5_Audio_Video/ControllingMediaWithJavaScript/ControllingMediaWithJavaScript.html#//apple_ref/doc/uid/TP40009523-CH3-SW4 – thefrontender 2013-03-18 01:43:27

回答

1

如果問題是加載,科爾多瓦一個很好的竅門是試圖設置它在一個(小)timeOut,以便其餘的在視頻之前加載。如上所述,readtyState選項並不總是可靠的。

+0

這似乎已將其排序。謝謝! – Scottie 2013-03-22 10:59:47

相關問題