| java.lang.Object | |
| ↳ | lineageos.os.Concierge |
Simply, Concierge handles your parcels and makes sure they get marshalled and unmarshalled correctly when cross IPC boundaries even when there is a version mismatch between the client sdk level and the framework implementation.
On incoming parcel (to be unmarshalled):
ParcelInfo incomingParcelInfo = Concierge.receiveParcel(incomingParcel);
int parcelableVersion = incomingParcelInfo.getParcelVersion();
// Do unmarshalling steps here iterating over every plausible version
// Complete the process
incomingParcelInfo.complete();
On outgoing parcel (to be marshalled):
ParcelInfo outgoingParcelInfo = Concierge.prepareParcel(incomingParcel);
// Do marshalling steps here iterating over every plausible version
// Complete the process
outgoingParcelInfo.complete();
| Nested Classes | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Concierge.ParcelInfo |
Parcel header info specific to the Parcel object that is passed in via
prepareParcel(Parcel) or receiveParcel(Parcel).
|
||||||||||
| Public Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
Prepare a parcel for the Concierge.
| |||||||||||
Tell the concierge to receive our parcel, so we can get information from it.
| |||||||||||
|
[Expand]
Inherited Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|
| |||||||||||
Prepare a parcel for the Concierge.
MUST CALL complete() AFTER MARSHALLING.
| Parameters | |
|---|---|
parcel |
Parcel: Outgoing parcel to be marshalled |
| Returns | |
|---|---|
Concierge.ParcelInfo |
Concierge.ParcelInfo containing parcel information, specifically the version.
|
Tell the concierge to receive our parcel, so we can get information from it.
MUST CALL complete() AFTER UNMARSHALLING.
| Parameters | |
|---|---|
parcel |
Parcel: Incoming parcel to be unmarshalled |
| Returns | |
|---|---|
Concierge.ParcelInfo |
Concierge.ParcelInfo containing parcel information, specifically the version.
|