luoyuhoho
2016-07-13 06:53
采纳率: 0%
浏览 1.3k

Android 关于播放本地视频(急急急急~~~~)

关于Android 视频播放的开发,我试过很多方法,包括书上的两种方法,都是以路径不对而失败,我也不知道路径怎么去设置(因为是在模拟器的SD里),唯一成功的方法就是把视频放到assets,再复制进data文件夹里去通过URi实现播放,但是这样项目很因为视频而变得很大,所以求大神po自己的实现方法供我学习,有完整的Demo就更棒了(原谅我这种伸手党,实在无力了,我一毛C币都没有,只有谢谢各位!)

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • freeCodeSunny 2016-07-13 07:00

    你确认是路径不对? 还是没有设置读写权限?

    评论
    解决 无用
    打赏 举报
  • luoyuhoho 2016-07-13 08:05

    public class VideoShow extends Activity {
    VideoView video;
    MediaController controller;

    // 路径
    String path = "mnt/shell/emulated/0/Download/other/IWish.mp4";
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        getWindow().setFormat(PixelFormat.TRANSLUCENT);
        setContentView(R.layout.video_show);
        video = (VideoView) findViewById(R.id.video_shows);
        controller = new MediaController(this);
        //
        File file = new File(path);
        if (file.exists()) {
            video.setVideoPath(file.getAbsolutePath());
            video.setMediaController(controller);
            controller.setMediaPlayer(video);
            video.requestFocus();
        }
    }
    

    }

    评论
    解决 无用
    打赏 举报
  • 尼古拉斯_仝 2016-07-13 08:54

    实现简单,循环播放
    mVideoView.setMediaController(mc);
    mVideoView.setVideoURI(Uri.parse("/mnt/sdcard/text.mp4"));

        mVideoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
    
            @Override
            public void onCompletion(MediaPlayer mp) {
                mVideoView.setVideoURI(Uri.parse("/mnt/sdcard/text.mp4"));
                mVideoView.start();
    
            }
        });
    
    评论
    解决 无用
    打赏 举报
  • 林尚辉 2016-07-13 09:41

    可以用自己写MediaPlayer通过 surface和surfaceholder来实现视频播放,也可以集成Vitamio,这个是开发完善的第三方

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题