Android 无法访问HTC ONE V上的存储卡
我正在用Android开发和测试一个简单的视频播放器示例。代码如下:Android 无法访问HTC ONE V上的存储卡,android,android-videoview,android-video-player,Android,Android Videoview,Android Video Player,我正在用Android开发和测试一个简单的视频播放器示例。代码如下: VideoView vid = (VideoView) findViewById(R.id.videoView1); vid.setVideoPath("/sdcard/myvideo.mp4"); vid.setMediaController(new MediaController(this)); vid.start(); vid.requestFocus(); 我使用的是HTC ONE V。当我在手机上运行它时,我在设
VideoView vid = (VideoView) findViewById(R.id.videoView1);
vid.setVideoPath("/sdcard/myvideo.mp4");
vid.setMediaController(new MediaController(this));
vid.start();
vid.requestFocus();
我使用的是HTC ONE V。当我在手机上运行它时,我在设置视频路径的线路上得到了一个NullPointerException
(即setVideoPath(“/sdcard/myvideo.mp4”)
)。我认为存取存储卡有问题
那么,有谁能告诉我,在HTC ONE V上访问存储卡的方式与其他手机不同吗?如果是,那么如何访问存储卡HTC ONE V.您应该使用
vid.setVideoPath(Environment.getExternalStorageDirectory().toString()+filename);
而不是
vid.setVideoPath("/sdcard/myvideo.mp4");
你应该使用
vid.setVideoPath(Environment.getExternalStorageDirectory().toString()+filename);
而不是
vid.setVideoPath("/sdcard/myvideo.mp4");
如果您在线路上收到NullpointerException
vid.setVideoPath("/sdcard/myvideo.mp4");
那么这表示vid为null
因此,在调用findviewbyid之前,请确保在Oncreate
中完成了setContentView
,并确保设置的布局中存在R.id.videoView1
正如其他人所指出的,不要硬编码SD卡路径。如果您在线路上遇到NullpointerException
vid.setVideoPath("/sdcard/myvideo.mp4");
那么这表示vid为null
因此,在调用findviewbyid之前,请确保在Oncreate
中完成了setContentView
,并确保设置的布局中存在R.id.videoView1
正如其他人所指出的,不要硬编码SD卡路径。我这样做了,但即使这样它也会给出NullPointerException我这样做了,但即使这样它也会给出NullPointerException日志猫错误。@哪一行显示空指针异常致命异常:main java.lang.RuntimeException:无法启动活动组件信息{my.test.media/my.test.media.MyVideoPlayer}:java.lang.NullPointerException。由以下原因引起:android.app.Activity.performCreate(Activity.java:4538)上的my.test.media.MyVideoPlayer.onCreate(MyVideoPlayer.java:40)上的java.lang.NullPointerException在android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1071)上的android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2158)。。。java:40行代码。发布您的整个活动代码和xml文件问题已得到解决。事实上,当手机连接到PC时,我正试图在手机上播放视频(即使我在手机连接时直接从卡上播放视频,错误是手机被用作USB),当我断开连接时,它开始播放。感谢大家发布日志猫错误。@哪一行显示空指针异常致命异常:main java.lang.RuntimeException:无法启动活动组件信息{my.test.media/my.test.media.MyVideoPlayer}:java.lang.NullPointerException。由以下原因引起:android.app.Activity.performCreate(Activity.java:4538)上的my.test.media.MyVideoPlayer.onCreate(MyVideoPlayer.java:40)上的java.lang.NullPointerException在android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1071)上的android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2158)。。。java:40行代码。发布您的整个活动代码和xml文件问题已得到解决。事实上,当手机连接到PC时,我正试图在手机上播放视频(即使我在手机连接时直接从卡上播放视频,错误是手机被用作USB),当我断开连接时,它开始播放。多亏了youThank,我错过了setContentView,现在我在这段代码之前写了这段代码,所以不会出现异常,但现在它在手机上给出了一个错误:“无法播放视频。很抱歉,无法播放此视频”。您是使用/sdcard/myvideo.mp4还是使用getExternalstoragedirectory。现在,请尝试对我尝试过的确切路径进行编码,/sdcard/myvideo.mp4和Environment.getExternalStorageDirectory().toString()+“/myvideo.mp4”,但它会产生相同的错误,但当我直接从卡播放该视频时,它会被播放,然后您应该检查日志。查看它是否显示了任何重要的内容谢谢,我缺少setContentView,现在我在这段代码之前写了这段代码,所以异常不会出现,但现在它在手机上给出了一个错误:“无法播放视频。很抱歉,无法播放此视频”。您是使用/sdcard/myvideo.mp4还是使用getExternalstoragedirectory。现在,请尝试对我尝试过的确切路径进行编码,/sdcard/myvideo.mp4和Environment.getExternalStorageDirectory().toString()+“/myvideo.mp4”,但它会产生相同的错误,但当我直接从卡播放该视频时,它会被播放,然后您应该检查日志。看看有没有什么重要的东西