1

だから私は外部ストレージ(SDカード)からビデオを再生しています.ビデオの再生に問題があり、これが私のコードです:

Uri uri = Uri.parse(url);
intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(uri, "video/*");

「申し訳ありませんが、この動画は再生できません」と表示されますが、通常の Android Player では再生可能です。URLを印刷したところ、次のようになりました。

VideoPlayer url: file:///mnt/sdcard/foldername/video-2012-12-26-21-26--44.mp4

ウリの問題か?いいえの場合は、正しい方向に向けていただけますか。また、ドット (.) を含むフォルダー名を試すと、問題が発生しますか?

url = file:///mnt/sdcard/Android/data/com.example.project/video-2012-12-26-21-26--44.mp4

ありがとう。

編集:私の本当の問題は解決されておらず、誰ももう答えたくないので、新しい質問を開きます: Android:ビデオはギャラリーから再生できますが、Intent.ACTION_VIEWタイプのビデオを使用して再生すると、再生できません

私の問題に対する部分的な回答:

この問題は、命名規則が原因で発生します。プレイヤーは「--」を含むファイル名を受け付けないと思います。そこで、ファイル名の形式を変更することでこの問題を解決しました。

// 免責事項: 完全な説明とソースはありませんが、この情報は回避策から推測したものです。

4

2 に答える 2

9

Intentで正しいsdcardパスを渡していることを確認してください。最善の方法は、静的文字列を渡す代わりに、 Environment.getExternalStorageDirectory()を使用して SDCARD パスを取得することです。

intent = new Intent(Intent.ACTION_VIEW);

File sdCard = Environment.getExternalStorageDirectory();
File file = new File(sdCard, "/foldername/video-2012-12-26-21-26-44.mp4");

intent.setDataAndType(Uri.fromFile(file), "video/*");

startActivity(intent);
于 2013-01-03T04:46:44.077 に答える