0

ブラウザーを使用して HTML ファイルを開きます。動画の再生は正常です。ただし、webview では再生できません。以下は私のAndroidコードとHTMLコードです。

アンドロイドコード:

public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    WebChromeClient chromeClient = new WebChromeClient();
    String  url = new String("file:///android_asset/content0.html"); 
    WebView mWebView = (WebView) findViewById(R.id.webView);
    mWebView.setWebChromeClient(chromeClient);
    HelloWebViewClient hwc = new HelloWebViewClient();
    mWebView.setWebViewClient(hwc);
    mWebView.getSettings().setJavaScriptEnabled(true);
    hwc.shouldOverrideUrlLoading(mWebView,url);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;


}
class HelloWebViewClient extends WebViewClient { 
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 
            if(url.indexOf(".3gp")!=-1 || url.indexOf(".mp4")!=-1 || url.indexOf(".flv")!=-1){
                    Intent intent=new Intent("android.intent.action.VIEW",Uri.parse(url));
                    view.getContext().startActivity(intent);
                    return true;
            }else{
            view.loadUrl(url); 
        return true; 
            }
    } 


}

}

html コード:

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    </head>
    <body  id="page">
        <div id="VideoBean" style="position:relative;" width="305" height="242">
            <video id="video" controls="controls" width="305" height="242"><source id="source" src="Sun_1-1.mp4">
            </video>
        </div>
    </body>
</html>

どこが間違っているのかわかりませんが、確かに問題があります。誰が教えてくれますか? ありがとう!

4

0 に答える 0