6

I'm trying to write a Notification object to a File. The best way I could find was to write the object to a parcel, marshall that parcel to get a byte[] and then write it to a file.

Parcel notif = Parcel.obtain();
notification.writeToParcel(notif, 0);
byte[] notifArray = notif.marshall();

I get a Runtime exception when I try to marshall the parcel though: "Tried to marshall a Parcel that contained Binder objects."

Is there a better way of writing Notification objects to file? Else, how do I get this approach to work?

sohil
  • 508
  • 1
  • 3
  • 14

2 Answers2

1

The notification contains a live/active binder object. It wasn't built to be used for saving the state (in a byte[]) rather it implements Parcelable for IPC purposes. You should ideally save the necessary fields rather than the object itself.

Nagesh Susarla
  • 1,660
  • 10
  • 10
0

I guess the best way is to store the information from the notification. The value of Binder object cannot be stored because it will be changed.

Yury
  • 20,618
  • 7
  • 58
  • 86