Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
视频无法由videoView Android播放_Android_Video_Android Videoview - Fatal编程技术网

视频无法由videoView Android播放

视频无法由videoView Android播放,android,video,android-videoview,Android,Video,Android Videoview,我正在开发视频播放器应用程序。我希望此应用程序显示为从SD卡、相册或手机任何文件夹中选择视频的选项。当我选择我的视频播放器播放视频时,应用程序会自动启动,但视频不会播放。我已授予读取和写入清单中外部存储的权限。以下是我的代码: Intent in =getIntent(); file_path = in.getData().getPath(); System.out.println("file path from sdcard:"+file_path); videoView =(Vid

我正在开发视频播放器应用程序。我希望此应用程序显示为从SD卡、相册或手机任何文件夹中选择视频的选项。当我选择我的视频播放器播放视频时,应用程序会自动启动,但视频不会播放。我已授予读取和写入清单中外部存储的权限。以下是我的代码:

 Intent in =getIntent();
 file_path = in.getData().getPath();
 System.out.println("file path from sdcard:"+file_path);
  videoView =(VideoView)findViewById(R.id.video);

   MediaController mediaController= new MediaController(this);
    mediaController.setAnchorView(videoView);        
     Uri uri=Uri.parse(file_path);        
     videoView.setVideoURI(uri);        
     videoView.requestFocus();
         videoView.start();
错误:

 10-19 10:39:40.917: I/System.out(20430): file path from sdcard:/external/video/media/24363
 10-19 10:39:40.987: E/MediaPlayer(20430): Uri is  <URL suppressed>
 10-19 10:39:40.997: E/MediaPlayer(20430): error (1, -2147483648)
 10-19 10:39:41.017: E/MediaPlayer(20430): Error (1,-2147483648)
 10-19 10:39:41.017: D/VideoView(20430): Error: 1,-2147483648
10-19 10:39:40.917:I/System.out(20430):SD卡的文件路径:/external/video/media/24363
10-19 10:39:40.987:E/MediaPlayer(20430):Uri是
10-19 10:39:40.997:E/MediaPlayer(20430):错误(1,-2147483648)
10-19 10:39:41.017:E/MediaPlayer(20430):错误(1,-2147483648)
10-19 10:39:41.017:D/VideoView(20430):错误:1,-2147483648

编辑:测试手机:内置32Gb内存的Android 4.1,没有SD卡。

/external/video/media/24363
不正确,请检查。必须访问本地路径。例如/SD卡/视频/媒体/。

/external/video/media/24363
不正确,请检查。必须访问本地路径。例如/sdcard/video/media/。

老实说,我过去也遇到过类似的问题,对于每个帐户,我最终发现最好的解决方案是直接扩展SurfaceView。要编写的代码数量少得惊人,并且可以轻松(相对而言)高效地根据您的需求进行定制。

老实说,我过去也遇到过类似的问题,对于每个帐户,我最终发现最好的解决方案是直接扩展SurfaceView。要编写的代码数量少得惊人,并且可以轻松(相对而言)高效地根据您的需求进行定制。

答案是

videoView.setVideoPath("http://www.ebookfrenzy.com/android_book/movie.mp4");        MediaController mediaController = new MediaController(this);
mediaController.setAnchorView(videoView);
videoView.setMediaController(mediaController);
videoView.start();
答案是


我也遇到了同样的问题,通过许多不同的途径解决了它,最终成功的是以下代码块:

/* inside onCreate */
VideoView videoView = (VideoView)findViewById(R.id.loginVideoBackground);
videoView.setVideoURI(Uri.parse("android.resource://" + this.getPackageName() + "/raw/lights"));
videoView.start();
我以前试过:

  • 扩展表面视图
  • 使用上面@brinda给出的答案(这导致了
    NullPointerException
  • 和其他各种答案的排列

…有时越简单越好

我也遇到了同样的问题,通过许多不同的途径解决了它,最终成功的是以下代码块:

/* inside onCreate */
VideoView videoView = (VideoView)findViewById(R.id.loginVideoBackground);
videoView.setVideoURI(Uri.parse("android.resource://" + this.getPackageName() + "/raw/lights"));
videoView.start();
我以前试过:

  • 扩展表面视图
  • 使用上面@brinda给出的答案(这导致了
    NullPointerException
  • 和其他各种答案的排列


..有时简单一点更好

快速提问,排除一个常见错误:当您的设备连接到您的开发机器(例如笔记本电脑)时,您是否遇到过这种情况?您是否尝试过
videoView.setVideoURI(in.getData())?@ρцσѕρєK in.getData()给出:->10-19 11:55:01.387:I/System.out(307):getData:content://media/external/video/media/24363@Brandon无论连接与否,视频都不会播放。快速提问,排除一个常见错误:当您的设备连接到您的开发设备(例如笔记本电脑)时,您是否遇到这种情况?您是否尝试过
videoView.setVideoURI(在.getData()中)?@ρцσѕρєK in.getData()给出:->10-19 11:55:01.387:I/System.out(307):getData:content://media/external/video/media/24363@Brandon无论连接与否,视频都不会播放。我从intent.getPath()获取该文件路径。你能告诉我如何获得正确的路径吗?我是从.getData.getPath()中获得的。您能告诉我如何获得正确的文件路径吗?您可以将视频文件(foo.mp4)推送到/sdcard/foo.mp4,然后try@CrossleSong我正在使用Sony Xperia和android 4.1.2,它有32Gb内置内存,没有SD卡。那么如何从intent获取文件名呢?我从intent.getPath()获取文件路径。你能告诉我如何获得正确的路径吗?我是从.getData.getPath()中获得的。您能告诉我如何获得正确的文件路径吗?您可以将视频文件(foo.mp4)推送到/sdcard/foo.mp4,然后try@CrossleSong我正在使用Sony Xperia和android 4.1.2,它有32Gb内置内存,没有SD卡。那么如何从intent获取文件名呢?我问的是如何从SD卡播放视频,而不是从http。videoView.setVideoURI(vidFile);需要用videoView.setVideoPath(path);setVideoPath(“/mnt/sdcard/infinliti.mp4”)替换被取消权限的方法;使用file@altaf我正在使用Sony Xperia和android 4.1.2,它有32Gb内置内存,没有SD卡。那么如何从intent获取文件名呢?我在问如何从SD卡播放视频,而不是从http。videoView.setVideoURI(vidFile);is Deracated方法需要被videoView.setVideoPath(path);setVideoPath替换(“/mnt/sdcard/infinetti.mp4”);使用file@altaf我正在使用Sony Xperia搭配android 4.1.2,它有32Gb内置内存,没有SD卡。那么如何从intent获取文件名呢?我正在使用Sony Xperia搭配android 4.1.2,它有32Gb内置内存,没有SD卡。那么如何从intent获取文件名呢?我正在使用Sony Xperia搭配android 4.1.2ich有32Gb内置内存,没有SD卡。那么如何从intent获取文件名呢?这对我帮助很大!谢谢:)我删除了我的
MediaController
。它不再崩溃。这对我帮助很大!谢谢:)我删除了我的
MediaController
。它不再崩溃。