我正在更新一個2.2/2.3 Android應用程序,該應用程序在webview中使用全屏HTML5視頻,並試圖在最新的4.4平臺上實現內聯視頻。在閱讀了新的Chromium webview對HTML5功能的支持後,我認爲HTML5視頻標籤的功能與Chrome瀏覽器的功能類似。愚蠢的我。在Android 4.4上播放內聯本地HTML5視頻文件的問題Chromium webview
在努力獲得內聯視頻工作後,我能夠這樣做。正如其他文章所述,內聯視頻對本地文件的支持僅適用於位於SD卡上的外部視頻文件。像以前一樣,我無法從資產文件夾或原始資源文件訪問我的視頻文件。我還必須將READ_EXTERNAL_STORAGE權限添加到我的應用程序的清單中。以下是視頻標記和權限標記:
<video id="video1" class="div-centered-content" controls preload="none" src="/sdcard/gizmo.mp4" type="video/mp4"></video>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
下面是我從我的努力中得出的一些其他結論。如果您不知道,請將其視爲需要正確答案的問題。
的自動播放和環 HTML5視頻標籤屬性不起作用。
全屏默認播放器控件中的按鈕不起作用。
新的webview對src屬性的處理不會自動分析和處理位於Res/Raw文件夾中的資產視頻文件和/或資源。由於資源和資源是在.apk中壓縮的,因此無法通過HTML5視頻的src屬性直接加載資源和資源。
onShowCustomView僅當用戶觸摸播放器控件上的全屏按鈕時纔會調用處理函數。當通過javascript播放視頻時,從一開始就沒有一種明顯的方式來攔截和手動處理Android內的視頻。我不知道是否有一種方法可以通過javascript和橋樑來手動調用VideoView並以類似於2.2中的方式處理它。如果這實際上可以完成,沒有示例代碼說明了這樣做的最佳方式。 (我想這個選項,因爲我可以再從我的資產/資源加載視頻文件,並且還提供了全屏功能。)
如果有,如何解決上述問題的任何簡明的例子,我確保webview用戶社區會欣賞這些信息。仍然不能相信2年後,Android webview團隊無法完全支持HTML5視頻標籤,也無法提供任何幫助開發人員更輕鬆地實現包含視頻的webview應用程序的文檔。
你如何獲得的路徑(在你的情況下'「/sdcard/gizmo.mp4」'從文件URI當我用'「文件:// ...」?'我得到一個「不準打文件「錯誤,所以我想我需要使用一個相對的.. –