4

HTML5ビデオを再生するコードに問題がありました。パワーポイントで短いプレゼンテーションを作成し、html5 にエクスポートしました。ビデオが含まれています。エクスポートしたファイルを Android のアセット ファイルにコピーしましたが、ビデオが再生されません。

import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebView;
import android.webkit.WebChromeClient;
import android.webkit.WebViewClient;


public class WebViewActivity7 extends Activity {

private WebView webView7;

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.webview7);

    webView7 = (WebView) findViewById(R.id.webView8);
    webView7.getSettings().setJavaScriptEnabled(true);
    webView7.getSettings().setAllowFileAccess(true);
    webView7.getSettings().setPluginsEnabled(true);
    webView7.getSettings().setAllowFileAccess(true);
    webView7.setWebChromeClient(new WebChromeClient());
    webView7.setWebViewClient(new WebViewClient());
    webView7.getSettings().setBuiltInZoomControls(true);
    webView7.loadUrl(url);

}
   String url ="file:///android_asset/HTML5.html";
   }

私のプレゼンテーションの他のすべては、ビデオを除いて魅力のように機能し、再生されず、ビデオをタブでクリックして Android タブレットのスクリーンで再生すると、次のエラーが表示されます - Android 4.0:

MediaPlayer エラー (1、-2147483648)

過去 5 日間、問題の解決策を見つけようとしてきました。かなりの数のフォーラムを読み、コードを数回変更しましたが、何もしませんでした。

上記のエラーの理由は次のとおりです。

  1. ファイルパスに誤りがあります。不正なディレクトリまたは Url または Uri が見つかりました。
  2. メディア ファイルにエラーがあります。互換性のない形式です。
  3. 権限がありません。

アプリで上記のすべてを確認しましたが、まだ解決方法が見つかりません。

私のhtml5ファイルとフォルダーの他のすべては正常に機能するため、ディレクトリの問題ではないと思います。私の埋め込まれたビデオ ファイルは .mp4 と .webm であり、サポートされているはずです。ファイルとフォルダーのアクセス許可を確認すると、すべて問題ないようです。同じ html5 ファイルとフォルダーで正常に動作するアプリの iPad バージョンがあり、ビデオは正常に動作します。

この問題を解決するにはどうすればよいか、誰もが知っています。コーディングは楽しいはずですが、この問題について5日後に考え直しました。

ありがとうございました。DPP

上記への追加:

別のフォーラムで、Android では 1 MB を超えるビデオ ファイルの再生が許可されていないことがわかりました。これは本当ですか? 私のビデオの 1 つは 3.2 MB で、もう 1 つは 29 MB です。

回答: ビデオ サイズに関するデータは、私が観察したとおりではありません。「res/raw」フォルダーから再生するようにビデオ (ビデオ ファイル MP4 のみ、HTML5 コードを含まない) をセットアップしましたが、すべて問題ありません。HTML5 に埋め込まれたアセット フォルダーからそれらを再生することはできません。

まだ解決策を探していますが、ビデオを「res/raw」フォルダーに置くことは、私の問題の良い代替手段です。

DPP

4

1 に答える 1

1

copyAssets を SD カードに使用し、SD カードから index.HTML を実行することで、この問題を解決しました。投稿を参照してくださいAndroid アプリを使用して html5 サイトを実行する

于 2014-05-25T21:53:05.510 に答える