[英]HTML5 inline video on iPhone vs iPad/Browser
我創建了一個HTML5視頻播放器(非常簡單),可以在iPad和瀏覽器上完美運行。
然而,當我在iPhone上打開它時,我只得到一個播放按鈕,當按下該按鈕時,在我的所有東西之上打開一個新窗口上的原生視頻播放器。
這意味着我無法訪問我的自定義控件和時間跟蹤(用Javascript編寫),因為視頻現在正在運行。
有沒有辦法覆蓋蘋果對iphone上的HTML5視頻的控制,讓它像在ipad上一樣工作?
干杯
對,
我無處可去,並向Apple提出了一個錯誤。
幾個星期后,他們回到我身邊,非常簡單地說,我應該在HTML上的視頻標簽中添加“webkit-playsinline”,並在UIWebView上添加“allowsInlineMediaPlayback”屬性。
所以最后,這就是它的樣子:
HTML
<video id="player" width="480" height="320" webkit-playsinline>
OBJ-C
webview.allowsInlineMediaPlayback = YES;
一切正常:)
希望這對某人有幫助,因為它幾乎沒有文檔記錄,我唯一可以找到“webkit-playsinline”參考的地方是iAds參考,其中說:“僅限iAds JS”。
Apple在iOS 10上的所有瀏覽器中啟用了屬性playsinline
,因此無縫地工作:
<video src="file.mp4" playsinline>
你可以通過瀏覽視頻而不是實際的.play()
來模擬播放來解決這個問題。
您可以使用iphone-inline-video來處理播放和音頻同步(如果有的話),並使<video>
保持正常工作。
你有一個應用程序創建或這是為移動野生動物園? 如果你有一個應用程序並使用UIWebView你應該設置UIWebView的allowInlineMediaPlayback屬性..
在iOS 10中,在HTML UI視頻標記中添加'playsinline'屬性並未阻止iPhone UIWebview上的全屏播放,直到我還添加了'controls'屬性。 這就是我的工作方式:
<video width="100%" height="240" controls playsinline>
<source src="movie.mp4" type="video/mp4" >
</video>
當然, _webView.allowsInlineMediaPlayback=YES;
在ViewController中也是如此。
有一些工作,我正在一個庫自動允許這個功能。 然而,直到Apple將野生動物園設置為
webview.allowsInlineMediaPlayback = YES;
那么我們將不得不使用hacks來做同樣的行為。
您可以在這里查看項目: https : //github.com/newshorts/InlineVideo ,看看它是否符合您的需求。
只需在config.xml中添加以下內容: <preference name="AllowInlineMediaPlayback" value="true" />
否則UIWebView將忽略webkit-playsinline屬性。
您可以通過將其添加到config.xml來輕松地允許此操作:UIWebView應該遵循webkit-playsinline屬性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.