2016-02-12 70 views
1

我想在Android Webview中查看3D模型。 許多Android智能手機都能夠通過WebView看到3D模型,但是,一款產品,名爲'Galaxy Note Pro 12.2'無法看到。我想在Android Webview中查看3D模型

首先,我給你一些選擇。

  1. 我的鉻(鉻)版本是48.0.2564.109。

  2. Android版本是5.0.2(棒棒糖)

  3. WebGL是最新版本。

現在,我給你一些示例代碼。

import android.os.Build; 
import android.os.Bundle; 
import android.support.v7.app.AppCompatActivity; 
import android.webkit.CookieManager; 
import android.webkit.WebSettings; 
import android.webkit.WebView; 

public class MainActivity extends AppCompatActivity { 

private WebView mWebView; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    mWebView = (WebView) findViewById(R.id.activity_main_webview); 

    WebSettings webSettings = mWebView.getSettings(); 
    webSettings.setJavaScriptEnabled(true); 
    webSettings.setSupportZoom(true); 
    webSettings.setBlockNetworkImage(false); 
    webSettings.setLoadsImagesAutomatically(true); 
    webSettings.setCacheMode(WebSettings.LOAD_NO_CACHE); 
    webSettings.setDomStorageEnabled(true); 
    webSettings.setAllowContentAccess(true); 
    webSettings.setDatabaseEnabled(true); 
    webSettings.setAppCacheEnabled(true); 

    if(Build.VERSION.SDK_INT >= 19){ 
     WebView.setWebContentsDebuggingEnabled(true); 
    } 

    webSettings.setUserAgentString("Mozilla/5.0 (Linux; Android 5.1.1; Nexus 5 Build/LMY48B; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/43.0.2357.65 Mobile Safari/537.36"); 
    webSettings.setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW); 
    CookieManager cookieManager = CookieManager.getInstance(); 
    cookieManager.setAcceptCookie(true); 
    cookieManager.setAcceptThirdPartyCookies(mWebView, true); 
    mWebView.loadUrl("http://threejs.org/examples/#webgl_multiple_renderers"); 
} 

@Override 
public void onBackPressed() { 
    if(mWebView.canGoBack()) { 
     mWebView.goBack(); 
    } else { 
     super.onBackPressed(); 
    } 
} 

我覺得很簡單的代碼。

我已經設置了權限。 當我使用其他便攜式產品(如銀河智能手機)時,沒有問題發生。但是,只有上面的產品不能。 此外,我已經檢查了chrome://標記 我讀過其他問題,並且做了所有事情,但是我的問題沒有解決。

我該怎麼辦? 有沒有遺漏的檢查?

回答

0

Webview沒有很好的支持該設備,我重申使用XWalkView的CrossWalk來取代webview。 XWalkView支持webview中不支持的設備。

這是我的一個answer關於如何在XWalkView中使用three.js渲染3D模型。

希望它有幫助。