I'm trying to provide my users with the ability to use either external
or internal storage. I'm displaying both images and videos (of a
scientific nature). When storing the media on the SD card, all is
fine. But when I store the media internally, only the images will
display. No matter what I try I get various errors when trying to load
and display the media stored under the
applicationcontext.getFilesDir().

Is there a trick to setting a videoview's content to such a file?

Can a ContentResolver help me?

On a related note, is it considered bad form to assume that external
storage exists?

Thanks in advance,

Sid

Below is one version that fails with "Cannot play video. Sorry, this
video cannot be played". But I have many other modes of failure. I can
copy the internal video to temp storage (external) and play it, so
this copy to internal does indeed create a valid movie. It only fails
when I try to play it directly from the internal storage.

  videoFile = new File(this.getFilesDir() + File.separator +
"test.mp4");


  InputStream data = res.openRawResource(R.raw.moviegood);


    try {

OutputStream myOutputStream = new FileOutputStream(videoFile);

byte[] buffer = new byte[8192]; int length; while ( (length =
data.read(buffer)) > 0 ) { myOutputStream.write(buffer); }

//Close the streams myOutputStream.flush(); myOutputStream.close();
data.close(); } catch (FileNotFoundException e) { // TODO Auto-
generated catch block e.printStackTrace(); } catch (IOException e)
{ // TODO Auto-generated catch block e.printStackTrace(); }

 vview.setKeepScreenOn(true);
    vview.setVideoPath(videoFile.getAbsolutePath());
 vview.start();

-- 
You received this message because you are subscribed to the Google
Groups "Android Beginners" group.

NEW! Try asking and tagging your question on Stack Overflow at
http://stackoverflow.com/questions/tagged/android

To unsubscribe from this group, send email to
android-beginners+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-beginners?hl=en

Reply via email to