Use Parcelable to pass an object from one android activity to another

android, android-activity, bundle, object, parcelable

Solution

As the error suggests, you need to make your class (`myClass` in this case) implement `Parcelable`. If you look at the documentation for `Bundle`, all the `putParcelable` methods take either a `Parcelable` or a collection of them in some form. (This makes sense, given the name.) So if you want to use that method, you need to have a `Parcelable` instance to put in the bundle...

Of course you don't have to use `putParcelable` - you could implement `Serializable` instead and call `putSerializable`.

Problem

I want to do this ``` class A extends Activity{ private class myClass{ } myClass obj = new myClass(); intent i = new Intent(); Bundle b = new Bundle(); b.putParcelable(Constants.Settings, obj); //I get the error The method putParcelable(String, Parcelable) in the type Bundle is not applicable for the arguments (int, A.myClass) i.setClass(getApplicationContext(),B.class); startActivity(i); } ``` How do I use Parcelable to pass obj to activity B?

Original source