Parcelable must be implemented: And the writexxx and readxxx attributes must be in one-to-one correspondence.
Public class basemodel implements parcelable {public long mid; public long getmid () {return mid;} public void setmid (long mid) {This. mid = mid ;}@ override public int describecontents () {// todo auto-generated method stub return 0 ;}@ override public void writetoparcel (parcel DEST, int flags) {// todo auto-generated method stub DeST. writelong (MID);} public static final parcelable. creator <basemodel> creator = new parcelable. creator <basemodel> () {// rewrite creator @ override public basemodel createfromparcel (parcel source) {basemodel P = new basemodel (); p. mid = source. readlong (); Return P ;}@ override public basemodel [] newarray (INT size) {// todo auto-generated method stub return New basemodel [size] ;}};}
Send broadcast:
public static void sendList(Context mContext,ArrayList<MusicModel> list){ Intent intent = new Intent("PLAYLIST"); intent.putParcelableArrayListExtra(MediaService.MediaServicePlayList, list); mContext.sendBroadcast(intent); }
Receive broadcast:
public class PlayListReceiver extends BroadcastReceiver{ @Override public void onReceive(Context context, Intent intent) { mList = intent.getParcelableArrayListExtra(MediaServicePlayList); } }
Register broadcast:
playListReceiver = new PlayListReceiver(); registerReceiver(playListReceiver,new IntentFilter("PLAYLIST"));