我可以通过插入以下网址来播放互联网视频:
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");
有什么建议吗?
答案 0 :(得分:31)
我遇到了同样的问题。 这对我有用:
Uri video = Uri.parse("android.resource://com.pac.myapp/raw/master");
因此,当你看到你有3个部分的uri:1)“android.resource://”2)“com.pac.myapp”3)“/ raw / master”
“master”是视频的名称
答案 1 :(得分:5)
这对我有用
String videoName = nameWithoutFileExtention;
int id = getResources().getIdentifier(videoName, "raw", getActivity().getPackageName());
final String path = "android.resource://" + getActivity().getPackageName() + "/" + id;
vvBgVideo.setVideoURI(Uri.parse(path));
答案 2 :(得分:0)
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'是视频文件名。
答案 3 :(得分:-1)
您只需要在资源文件夹下的原始文件夹中找到歌曲。 如果它是链接那么
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);
}
}
喜欢在表面视图中播放视频