This is my video view class and its working fine
private void CopyReadVdo() {
setContentView(R.layout.video_player);
VideoView view = (VideoView) findViewById(R.id.videoview);
String path = "android.resource://" + getPackageName() + "/" + R.raw.video1;
Uri uri = Uri.parse(path);
view.setVideoURI(uri);
MediaController mediaController = new MediaController(this);
mediaController.setAnchorView(view);
view.setMediaController(mediaController);
view.start();
}
I need to call this function with an argument like
private void CopyReadVdo(String vdoname) {
setContentView(R.layout.video_player);
VideoView view = (VideoView) findViewById(R.id.videoview);
String path = "android.resource://" + getPackageName() + "/" + vdoname;
Uri uri = Uri.parse(path);
view.setVideoURI(uri);
MediaController mediaController = new MediaController(this);
mediaController.setAnchorView(view);
view.setMediaController(mediaController);
view.start();
}
but is shows error Can't play this video. Thanks in advance.
First try to get resource id rawId
from resource name vdoname
int rawId = getResources().getIdentifier(vdoname, "raw", getPackageName());
String path = "android.resource://" + getPackageName() + "/" + rawId;
Update:
pass shaktee
as vdoname
to CopyReadVdo
function instead of R.raw.shaktee
Or change type of vdoname
to int and pass R.raw.shaktee
to CopyReadVdo
function
private void CopyReadVdo(int vdoname) {
setContentView(R.layout.video_player);
VideoView view = (VideoView) findViewById(R.id.videoview);
String path = "android.resource://" + getPackageName() + "/" + vdoname;
Uri uri = Uri.parse(path);
view.setVideoURI(uri);
MediaController mediaController = new MediaController(this);
mediaController.setAnchorView(view);
view.setMediaController(mediaController);
view.start();
}