Вопрос по video, android-videoview, android – Android: как воспроизводить видео с активов?

29

Я делаю приложение, в котором я должен показать видео из папки активов вFragment, Может ли кто-нибудь помочь мне сделать это? Нужно ли использовать VideoView в XML?

взгляните на этот вопросstackoverflow.com/questions/3746361/… Aamirkhan
Да, это дубликат, но проверьте ссылку еще раз, ни один код не работает user1025050
возможный дубликатHow to play videos in android from assets folder or raw folder? ρяσѕρєя K

Ваш Ответ

4   ответа
66

Вместо того, чтобы получать доступ из сборок, вы должны скопировать видео в папку res / raw вашего проекта. Создайте необработанную папку в папке res. Он должен быть в поддерживаемом формате (3gp, wmv, mp4) и именоваться строчными буквами, цифрами, подчеркиваниями и точками в имени файла, аналогично: video_file.mp4.

VideoView view = (VideoView)findViewById(R.id.videoView);
String path = "android.resource://" + getPackageName() + "/" + R.raw.video_file;
view.setVideoURI(Uri.parse(path));
view.start();
проверить, работает ли getActivity (). getPackageName () или нет ??
Фрагмент расширяет
Ваша деятельность расширяет Fragment или FragmentActivity.Pls Проверьте это.
Это сработало .. Спасибо AkashG и +1 за помощь
Я использую идентификатор фрагмента и getPackageName (), давая ошибку.
0

Я уже страдал от той же проблемы, вы должны предпочесть папку res / raw проекта вместо ресурсов. Создайте необработанную папку в папке res. Сохранить видеофайл в поддерживаемом формате(3gp, wmv, mp4 ) и назван сlowercase, numerics, underscores and dots в его имениlikewise:filename.3gp в сырую папку.

VideoView videoview = (VideoView) findViewById(R.id.VideoView);

String uriPath = "android.resource://your application package name/raw/your 
wmv/mp4/3gp file in res/raw path without extension";

videoview.setVideoURI(Uri.parse(uriPath));

videoview.start();
0

Воспроизведение видео (sample.mp4) в папке res / raw вместе с Media Controller

// Импорт отчетов

import android.widget.VideoView;
import android.widget.MediaController;

public class youractiviy extends Activity {

private VideoView videoView;
private MediaController mediaController;

protected void onCreate(Bundle savedInstanceState) {
 // Your Startup code
 videoView = (VideoView) findViewById(R.id.video_view);
 videoView.setVideoPath("android.resource://" + getPackageName() + "/" + R.raw.sample); 
 mediaController = new MediaController(TestActivity.this);
 mediaController.setAnchorView(videoView);
 videoView.setMediaController(mediaController);
 videoView.start();

}
}

// XML код

<VideoView
        android:id="@+id/video_view"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
1
VideoView view = (VideoView)findViewById(R.id.videoView);
String path = "android.resource://" + getPackageName() + "/" + R.raw.video_file;
view.setVideoURI(Uri.parse(path));
view.start();

Это код AkashG, но я помню, что R здесь не из класса Android. Это из вашего собственного проекта.

Похожие вопросы