小编典典

无法播放此视频错误

java

    public class MainActivity extends AppCompatActivity {
    Button clk;
    VideoView videov;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    clk=(Button) findViewById(R.id.video);
    videov=(VideoView)findViewById(R.id.videoView);
    }

    public void videoplay(View v){
   String videopath = "android.resource://"+getPackageName()+"+R.raw.movie";
    Uri uri =Uri.parse(videopath);
    videov.setVideoURI(uri);
    videov.requestFocus();
    videov.start();

    }
    }

无法播放此视频错误… !! 看到图片 截屏
怎么办?按下播放按钮后,它说不能播放此视频。需要解决这个问题。


阅读 251

收藏
2020-11-26

共1个答案

小编典典

您好,前天我遇到了同样的问题,几乎尝试了所有方法,但都没有成功。之后,我使用了这个库,并且运行良好。只需遵循几个步骤:

第1步。 将其添加到您的gradle

compile "fm.jiecao:jiecaovideoplayer:4.7.0"

第2步。 将其添加为xml布局中的视频播放。

<fm.jiecao.jcvideoplayer_lib.JCVideoPlayerStandard
    android:id="@+id/videoPlayer"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

第3步。 从此处检查如何在您的班级中使用此库,

public class PlayVideoActivity extends BaseActivity {

@BindView(R.id.videoPlayer)
JCVideoPlayerStandard mVideoPlayer;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    restoreFromIntent(getIntent());
}

@Override
public int getLayout() {
    return R.layout.activity_play_video;
}

//create intent for this activity with all the necessary params
public static Intent createIntent(Context context, String videoUrl) {
    Intent intent = new Intent(context, PlayVideoActivity.class);
    intent.putExtra(ValueConstants.VIDEO_URL, videoUrl);
    return intent;
}

// get video path from intent and play the video here
private void restoreFromIntent(Intent intent) {
    String videoPath = intent.getExtras().getString(ValueConstants.VIDEO_URL);
    mVideoPlayer.setUp(videoPath
            , JCVideoPlayerStandard.SCREEN_LAYOUT_LIST, "");
}

@Override
public void onBackPressed() {
    if (JCVideoPlayer.backPress()) {
        return;
    }
    super.onBackPressed();
}

@Override
protected void onPause() {
    super.onPause();
    JCVideoPlayer.releaseAllVideos();
}
}

我这边还有另外一件事。您也可以使用此进行视频缓存。昨天我也发现了这一点。一次是从互联网上播放。之后也没有互联网播放。

更新的答案:

上面的示例中,我提供了从url播放在线视频的功能,但是这个问题与视频路径问题有关。

刚刚更改了此路径:

String videopath = "android.resource://"+getPackageName()+"+R.raw.movie";
Uri uri =Uri.parse(videopath);

为此,

Uri uri = Uri.parse("android.resource://" + getPackageName() + "/" + R.raw.yourvideo);

希望对您有所帮助。

2020-11-26