Попытка воспроизведения видео из необработанной папки (VideoView)
Я могу воспроизводить видео из Интернета, вставив URL-адрес, как показано ниже:
mPath = Uri.parse("http://commonsware.com/misc/test2.3gp");
mVid.setVideoURI(mPath);
mVid.requestFocus();
mVid.start();
Но теперь у меня есть видео в моей исходной папке, поэтому путь - res/raw/testing.3gp. Код ниже не работает, и я пробовал другие способы, но не помог.
mPath = Uri.parse("../../res/raw/testing.3gp");
Любые предложения?
Ответы
Ответ 1
У меня была та же проблема.
Это сработало для меня:
Uri video = Uri.parse("android.resource://com.pac.myapp/raw/master");
Итак, как вы видите, у вас есть 3 части uri: 1) "android.resource://" 2) "com.pac.myapp" 3) "/raw/master"
"master" - это название вашего видео
Ответ 2
это работает для меня
String videoName = nameWithoutFileExtention;
int id = getResources().getIdentifier(videoName, "raw", getActivity().getPackageName());
final String path = "android.resource://" + getActivity().getPackageName() + "/" + id;
vvBgVideo.setVideoURI(Uri.parse(path));
Ответ 3
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btn=(Button)this.findViewById(R.id.playvideo);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
VideoView vid=(VideoView)findViewById(R.id.video);
vid.setMediaController(new MediaController(MainActivity.this));
Uri video = Uri.parse("android.resource://com.example.tenzinthinley.video/raw/ed");
vid.setVideoURI(video);
vid.requestFocus();
vid.start();
}
});
}
}
Измените мое имя, если это не работает. 'ed' - это имя видеофайла.
Ответ 4
Вам просто нужно найти песню в необработанной папке в папке с ресурсами.
если это ссылка, то
private String urlVideo ="http://www.pocketjourney.com/downloads/pj/video/famous.3gp";
//Make uri from song located in raw folder
Uri uri = Uri.parse("android.resource://" + getPackageName() + "/"
+ R.raw.shakebooty);
player.setUpVideoFrom(uri.toString());
public void setUpVideoFrom(String source) throws IllegalArgumentException,
IllegalStateException, IOException {
mPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
//Only to check if you want to play song from url
if (source.contains("http"))
{
mPlayer.setDataSource(source);
}
//If want to play song from uri you created from song in raw folder
else {
mPlayer.setDataSource(ctx, source);
}
}
Наслаждайтесь воспроизведением видео в режиме просмотра поверхности