2012-08-24 33 views
0

我正在開發和測試的Android的一個簡單的視頻播放器訪問存儲卡。下面的代碼給出:無法在HTC一個V-

VideoView vid = (VideoView) findViewById(R.id.videoView1); 

vid.setVideoPath("/sdcard/myvideo.mp4"); 
vid.setMediaController(new MediaController(this)); 
vid.start(); 
vid.requestFocus(); 

我使用HTC ONE。當我在我的手機上運行這個我在哪裏我設置視頻路徑中的線(即setVideoPath("/sdcard/myvideo.mp4"))得到一個NullPointerException。我認爲訪問存儲卡存在問題。

因此,誰能請你告訴那就是訪問HTC ONE V存儲卡從其他手機不同的方式?如果是,那麼如何訪問存儲卡HTC ONE五

+0

發佈您的Logcat錯誤。 @哪一行顯示空指針異常 –

+0

致命例外:main java.lang.RuntimeException:無法啓動活動ComponentInfo {my.test.media/my.test.media.MyVideoPlayer}:java.lang.NullPointerException 。 。 。 所致:顯示java.lang.NullPointerException 在my.test.media.MyVideoPlayer.onCreate(MyVideoPlayer.java:40) 在android.app.Activity.performCreate(Activity.java:4538) 在android.app.Instrumentation .callActivityOnCreate(Instrumentation.java:1071) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2158) ... 11更多 – swdeveloper

+0

發佈MyVideoPlayer.java:40行號碼。發佈您的整個活動代碼和xml文件 –

回答

3

vid.setVideoPath("/sdcard/myvideo.mp4"); 

然後表明vid爲空。

因此,請確保setContentViewOncreate之前完成,然後再調用findviewbyid並確保R.id.videoView1存在於您設置的佈局中。

正如其他人所指出的不硬編碼的SD卡路徑。

+0

謝謝,我缺少的setContentView,現在我寫了這個代碼之前,這樣的例外是不來了,但現在它給手機錯誤說 – swdeveloper

+0

您使用/sdcard/myvideo.mp4或使用getExternalstoragedirectory「無法播放視頻。抱歉,該視頻無法播放」。現在嘗試硬編碼的確切路徑 – nandeesh

+0

我曾經嘗試都,/sdcard/myvideo.mp4和Environment.getExternalStorageDirectory()。的toString()+「/ myvideo.mp4」,但它給了同樣的錯誤 – swdeveloper

2

你應該如果你上線讓NullPointerException異常使用的

vid.setVideoPath(Environment.getExternalStorageDirectory().toString()+filename); 

代替

vid.setVideoPath("/sdcard/myvideo.mp4"); 
+0

我這樣做了,但即使如此,它給NullPointerException異常 – swdeveloper

+0

糊日誌請 –