2

私は簡単な疑いでここにいますが、それは私の心を吹き飛ばしています >.<

私はJavaの初心者で、Android用のアプリを作りたかったのですが、ビデオプレーヤーのコーディングに行き詰まっています。

インターネットで見つけたこのコードを使用しています(stackoverflowにあったと思いますが、よくわかりません)

VideoView vv = (VideoView)this.findViewById(R.id.videoView1);
String fileName = "android.resource://" + getPackageName() + "/" + R.raw.reveal;
vv.setVideoURI(Uri.parse(fileName));
vv.start();

「android.resource://」が含まれるファイル名に何を付けたのか

特定のアクティビティを開いたときにビデオを再生したい。私のビデオは drawable-ldpi のフォルダーにあります。動画のファイル名は Reveal.wmv です

皆さん、私がそれを解決するのを手伝ってもらえますか?

宜しくお願いします :D 私の英語について申し訳ありません :/

4

4 に答える 4

2

あなたはそれについて少し間違って考えています。ほとんどのチュートリアルでは、名前を挿入する必要がある場所として「ファイル名」を使用していることを知っていますが、この場合はそうではありません。この線

String fileName = "android.resource://" + getPackageName() + "/" + R.raw.reveal;

ビデオのファイルパスとファイル名を設定しています。この場合、raw フォルダーとビデオ「reveal」へのパスを設定しています。まだ作成していない場合は、raw フォルダーを作成して res フォルダーに配置する必要があります。これは、すべてのビデオおよびサウンド メディアを保存する場所です。

次の行で:

vv.setVideoURI(Uri.parse(fileName));

「ファイル名」は入力パスの代わりになっているので、そのままにしておきます。前の行で、ビデオを指している文字列に「ファイル名」という名前を付けましたが、次のようにプログラムすることもできます。

String elmo = "android.resource://" + getPackageName() + "/" + R.raw.reveal;
vv.setVideoURI(Uri.parse(elmo));

mp4 形式のファイルを使用するのが最適であることがわかりました。私はそれが単なる拡張であることを知っており、実際のコーデックについてはわかりませんが、それはあなたを方向に導くはずです. ファイル名自体に拡張子が使用されていないことに注意してください。Android は単純に名前を検索してファイルをロードします。間違った形式または許容される拡張子である場合、単に再生されません。

それが役立つことを願っています。

于 2013-12-01T05:40:52.147 に答える
0

宣言しようとしている方法PATHが間違っています...最初にビデオファイルを /asset フォルダーに配置してから、getAssests()メソッドを使用する必要があります..それは機能します。

于 2013-10-09T02:22:37.353 に答える
0

drawables フォルダーは動画用ではありません。res/raw/ に配置します (作成する必要がある場合があります)。リソース名 (R.raw.yourfilename) を変更する必要がありますが、それ以外は正しいように見えます。

于 2013-10-09T00:16:41.833 に答える
0

unlock.wmv を drawable-ldpi フォルダーから raw フォルダーに移動するだけで、うまく機能します。raw フォルダーがない場合は、res フォルダーの下に作成します。

于 2013-10-09T03:12:26.363 に答える