2016-04-03 76 views
0

我使用cordova和three.js開發了簡單的3D android應用程序。它不適用於少數設備(HTC One X,Samsung S6),並且在少數設備(華碩,One + one)中完美工作。我不知道爲什麼它不工作,它顯示空白的白色屏幕。這是我的js代碼three.js cordova apk的android

var renderer = new THREE.WebGLRenderer({ antialias: true }); 
    renderer.setPixelRatio(window.devicePixelRatio); 
    renderer.setSize(window.innerWidth, window.innerHeight); 
    $('#wrapper').html(renderer.domElement); 
    element = renderer.domElement; 
    var scene = new THREE.Scene(); 
    var camera = new THREE.PerspectiveCamera(100, window.innerWidth/window.innerHeight, 0.1, 10000); 
    camera.position.set(0, 0, 0); 
    var effect = new THREE.StereoEffect(renderer); 
    effect.setSize(window.innerWidth, window.innerHeight); 
    var axis = new THREE.AxisHelper(70000.5); 
    //scene.add(axis); 
    var cube = new THREE.Mesh(new THREE.CubeGeometry(2.5, 4, 2.5), new THREE.MeshNormalMaterial()); 
    cube.position.z=-4; 
    scene.add(cube); 
    var lastTimeMsec = null; 
    function animate(timestamp) { 
    effect.render(scene, camera); 
    requestAnimationFrame(animate); 
    } 
    animate(); 

任何人都可以讓我知道這個問題。

在此先感謝

+0

很多Android設備都有自己的錯誤,只顯示特定的硬件和特定的軟件。雖然錯誤似乎相同,但原因可能不同。您可能需要爲每個手機分別調試確切的問題 – Ritave

回答

1

我們需要構建之前安裝一個插件科爾多瓦(科爾多瓦 - 插件 - 人行橫道-的WebView )。這允許three.js支持所有設備。

+0

並非所有設備。特別是當Android版本低於5.0時。檢查[StackOverflow問題](http://stackoverflow.com/a/37737121/6858891)和[Crosswalk網站](https://crosswalk-project.org/documentation/about/faq.html#Canvas-and- WebGL的支持)。 – Hellium