12

AndroidでHTML5を使用してwebViewでmp4ビデオを再生しようとしていますが、残念ながら機能していません。

これがnew2.html という名前のコード HTMLファイルです。

<video width="365" height="200" src="/sdcard/Download/video.mp4" controls autobuffer></video>


<!--<!DOCTYPE html>
<html>
<body>

<video width="320" height="240" controls autoplay>
  <source src="/sdcard/Download/video.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>

</body>
</html>-->

Javaファイルは次のとおりです。

public class WebActivity extends Activity {
     WebView wv;  
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
         setContentView(R.layout.web_activity);  

         wv = (WebView) findViewById(R.id.webview);  
         wv.loadUrl("file:///android_asset/new2.html");
         wv.getSettings().setAllowFileAccess(true);
         wv.getSettings().setJavaScriptEnabled(true);
         wv.getSettings().setPluginsEnabled(true);
        // webview.loadUrl("file:///android_asset/new.html");
    }

}

XMLファイルは次のとおりです。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
    <WebView
        android:id="@+id/webview" 
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>


</LinearLayout>
4

5 に答える 5

0

「/sdcard/Download/video.mp4」を「file:///sdcard/Download/video.mp4」に変更するとどうなりますか? 私はhtml部分を意味します:

<video width="365" height="200" src="file:///sdcard/Download/video.mp4" controls autobuffer></video>

カスタム Web アプリで html ページを開くことができませんでした。ただし、「file:///」を追加しないと、Android ブラウザーでビデオが再生されないことに気付きました。(私の場合、「file:///」を追加すると、ビデオの読み込みが開始されるまでに時間がかかりました。)

于 2013-06-08T12:14:03.980 に答える
0

WebView で MP4 ビデオを再生するには、まずマニフェストでコンテンツ プロバイダーを宣言する必要があります。

<provider android:name = "MyDataContentProvider" android:authorities="com.myapp" />

メソッドでオープンファイルを実装しますopen()−</p>

URI myURL = URI.create("file:///mypath/new.mp4");
File f = new File(myURL);
ParcelFileDescriptor p =
   ParcelFileDescriptor.open(f, ParcelFileDescriptor.MODE_READ_ONLY);
return p;
于 2021-12-28T11:47:03.450 に答える