天天看點

android webgl,在Android 5的WebView上支援WebGL

我有一個Web項目(取決于WebGL),它适用于計算機,任何浏覽器 . 現在我正在嘗試将此項目作為基于Android的手機上的應用程式打開 . 我使用WebView來實作這一目标 . 我的手機(Nexus 3)有Android 4.3,而我之前在Android 5之前了解到,WebView元件不支援WebGL . 在Android 5中,WebView成為可更新的獨立元件,依賴于Chromium版本37(可以更新)并開始支援WebGL . 是以,預計我将使用Android 4.3獲得錯誤 .

在此之後,我嘗試使用另一部手機(三星Galaxy S4搭載Android 5和Chrome版本43) . 那麼應用程式應該運作良好,但仍然在WebView上出錯 . 我試過get.webgl.org仍然是同樣的錯誤:

Error constructing CesiumWidget.

Visit http://get.webgl.org to verify that your web browser and hardware support WebGL. Consider trying a different web browser or updating your video drivers.

詳細的錯誤資訊如下:

RuntimeError: The browser supports WebGL, but initialization failed.

錯誤

at new RuntimeError (http://192.168.43.125:8090/TMAPW/lib/Cesium/Build/CesiumUnminified/Cesium.js:10657:19)

at new Context (http://192.168.43.125:8090/TMAPW/lib/Cesium/Build/CesiumUnminified/Cesium.js:96489:19)

at new Scene (http://192.168.43.125:8090/TMAPW/lib/Cesium/Build/CesiumUnminified/Cesium.js:120928:23)

at new CesiumWidget (http://192.168.43.125:8090/TMAPW/lib/Cesium/Build/CesiumUnminified/Cesium.js:130986:25)

at AMouseListener.Map2D.initWidget

這似乎仍然是一個配置問題,是以我試圖在Chrome上打開它而不是在WebView上但仍然是同樣的錯誤 . 我在安裝後在Chrome上啟用了WebGL . `Firefox工作正常 . 我有三個問題:

似乎有什麼我做錯了,我該怎麼辦呢?

Android是否仍然不支援WebView上的WebGL,是否有任何可能的方法來打開依賴于WebGL的應用程式?

有沒有其他方法可以将WebGL項目作為應用程式打開 . (我已經閱讀了 cordova 和 cocoon.js 但不确定是否可以通過這些來完成 . )是以,如果有一個工作正常,我甯願直接去做 .