2011-11-22 143 views
0

我把web放到webview中,這是一個視頻在web上。視頻的格式是mp4.I把資源放在android項目的「資產」文件中。現在我可以掃描網頁,但視頻無法播放。當我使用此代碼mWebView.loadUrl(「file:///android_asset/demo/html/demo.html」); ,視頻無法播放。如果我使用這個代碼mWebView.loadUrl(「http://v.youku.com/v_playlist/f16642432o1p0.html」),視頻可以在線播放。demo.html可以打開通過IE9和chrome.My的Android版本爲3.1視頻不能在webview中播放

webview = (WebView) findViewById(R.id.webView); 
    webSettings = webview.getSettings(); 

    webSettings.setLayoutAlgorithm(LayoutAlgorithm.NARROW_COLUMNS); 
    webSettings.setBuiltInZoomControls(true); 
    webSettings.setJavaScriptEnabled(true); 
    webSettings.setJavaScriptCanOpenWindowsAutomatically(true); 
    webSettings.setPluginState(PluginState.ON); 
    webSettings.setPluginsEnabled(true); 
    webSettings.setAllowFileAccess(true); 

    webview.loadUrl("file:///android_asset/demo/html/demo.html"); 
    //webview.setWebChromeClient(new MyChromeClient()); 
    //webview.setWebViewClient(new MyWebClient()); 
+0

http://v.youku.com/v_playlist/f16642432o1p0.html此鏈接是否在您的Android手機默認瀏覽器中播放 – Karthi

+0

您正在測試的是什麼版本的Android – Karthi

+0

Android測試版本是3.1。 –

回答

2

假設你要玩任何嵌入的視頻,你必須做兩件事情:

  1. 在Android清單,設定android:hardwareAccelerated="true"

    <application android:icon="@drawable/icon" android:label="@string/app_name" android:hardwareAccelerated="true"> 
    <activity android:name=".Activity" 
        android:label="@string/app_name" android:configChanges="orientation|keyboardHidden"> 
        <intent-filter> 
         <action android:name="android.intent.action.MAIN" /> 
         <category android:name="android.intent.category.LAUNCHER" /> 
        </intent-filter> 
    </activity> 
    

  2. 你已經做了什麼,你的主要活動組:

    WebSettings w = webView.getSettings();  
    w.setPluginState(PluginState.ON); 
    

硬件加速已經在以較舊的Android設備上運行,也被激活,儘管這個選項只出現在Android 3.0+中。我猜你必須在Android 1.0-2.3.3的代碼中的某個地方指定它,但如果你使用的是3.0+以上,它就可以正常工作。

希望它有幫助!

+0

工作過,但視頻被切斷。我只能看到約1/5的視頻,其餘的都是白屏。它在Android 4.1中運行良好,但不是3.1。 – CACuzcatlan