15

Android のアプリでアセットまたは raw フォルダーからビデオを再生したいのですが、ビデオをVideoView再生できないため、エラーが発生します。解決策を教えてください。

これが私が使用したコードです

VideoView vd = (VideoView)findViewById(R.id.Video);         
Uri uri = Uri.parse("android.resource:"  + R.raw.video);
MediaController mc = new MediaController(this);
vd.setMediaController(mc);
vd.setVideoURI(uri); 
vd.start();
4

6 に答える 6

34

注意すべきいくつかのこと:

  1. ビデオをプロジェクトのres/rawフォルダーにコピーする必要があります。
  2. サポートされている形式(3gp、wmv、mp4)で、ファイル名に小文字、数字、アンダースコア、ドットを使用して名前を付ける必要があります:my_video_file.mp4
  3. コードでこのリソースを操作するときは、生成されたR統計を参照します-ファイル拡張子が削除されます:R.raw.my_video_file
  4. Activityクラスには、ビデオに正しいURIを作成するときにコードで使用できるヘルパーメソッドgetPackageName()があります。
VideoView vv = (VideoView)this.findViewById(R.id.videoView)
String uri = "android.resource://" + getPackageName() + "/" + R.raw.my_video_file;
vv.setVideoURI(Uri.parse(uri));
vv.start();

これについての詳細はここにあります。

于 2011-02-01T04:36:02.650 に答える
7

パッケージ名を uri に含める必要があります。

  Uri uri = Uri.parse("android.resource://[package]/raw/video")

また

  Uri uri = Uri.parse("android.resource://[package]/"+R.raw.video);

また、これらの例もチェックしてください。

于 2010-09-19T16:35:17.517 に答える
2

VideoView でうまくいかない方法はたくさんあります。主な理由は、logcat では助けが得られず、常に UNKNOWN エラーが発生するためです。

このリンクは、開始するための最良の方法であることがわかりました...完全な説明なので、間違いはありません。著者に感謝します...

http://androidexample.com/Play_Video_File_-_Android_Example/index.php?view=article_discription&aid=124&aaid=144

于 2014-03-26T20:30:07.763 に答える
0

/resource/raw/またはにビデオ リソースを含めると、assets/デフォルトでは.mp4形式が検索されますが、ファイルは受け入れられません.wmv。外部の場所 ( など) からビデオ ファイルを読み取る場合/mnt/sdcard/demo.wmvは、それらを受け入れます。

于 2013-03-08T07:39:18.973 に答える
0

試す:

   AssetFileDescriptor afd = getAssets().openFd(fileName);
   player.setDataSource(afd.getFileDescriptor(),afd.getStartOffset(), afd.getLength());
于 2013-11-11T10:18:12.077 に答える