Passing File With Intent, How Do I Retrieve It
Solution 1:
File implements serializable ( first thing to check to send an object through an intent. ) ( source )
so you can do it, just cast the resulting object to File like this :
File pictureFile = (File)getIntent.getExtras().get("picture");
It should be fine. (it use the getter for 'object' which needs a serializable object and return it. The cast should be enough.)
Solution 2:
Try the following:
YourPictureClass picture = (YourPictureClass)getIntent().getExtras().get("picture");
By calling getExtras()
in your Intent
you get an instance of Bundle
.
With the normal get()
in class Bundle
you can read every Object
you pass to the calling Intent
. The only thing you have to do is to parse it back to the class
your object is an instance of.
Solution 3:
You can send it like this:
intent.putExtra("MY_FILE", myFile);
and retrieve it like this:
File myFile = (File)intent.getSerializableExtra("MY_FILE");
However, it may be better (anyone?) to send the file as a string reference, in which case you could send as:
intent.putExtra("MY_FILE_STRING", myFile.toString());
and retrieve/reconstruct like this:
File myFile = new File(intent.getStringExtra("MY_FILE_STRING"));
Post a Comment for "Passing File With Intent, How Do I Retrieve It"