Sobes.tech
Junior — Middle

Kā var serializēt objektu pārraidīšanai vai saglabāšanai Bundle tipa konteinerā?

sobes.tech AI

Atbilde no AI

Android, lai pārsūtītu vai saglabātu objektu konteinerā veida Bundle, objekts ir jābūt serializējamam. Galvenie serializācijas veidi:

  1. Parcelable — Android optimizēta saskarne, ļauj ātri serializēt objektus.
  2. Serializable — standarta Java saskarne, vieglāk īstenojama, bet mazāk efektīva veiktspējas ziņā.

Piemērs ar Parcelable:

public class User implements Parcelable {
    private String name;
    private int age;

    protected User(Parcel in) {
        name = in.readString();
        age = in.readInt();
    }

    public static final Creator<User> CREATOR = new Creator<User>() {
        @Override
        public User createFromParcel(Parcel in) {
            return new User(in);
        }

        @Override
        public User[] newArray(int size) {
            return new User[size];
        }
    };

    @Override
    public int describeContents() {
        return 0;
    }

    @Override
    public void writeToParcel(Parcel dest, int flags) {
        dest.writeString(name);
        dest.writeInt(age);
    }
}

// Lietošana:
Bundle bundle = new Bundle();
bundle.putParcelable("user", userObject);

Tādējādi objekts var tikt ievietots Bundle un nodots starp Android komponentiem.

Kā var serializēt objektu pārraidīšanai vai… - sobes.tech