the first and last 00000000 seems the open and close tags of the content, therefore just skip these chunks.
then for the 00000001 00000001 00000003, the first 00000001 seems to indicate a successful call. Here the expected call return is List<CellInfo>, hence the second 00000001 is the length of the list.
Since the encoding is using little endian, the 00000001 should be reversed to 01000000 then the Parcel can use readInt() correctly, in this case val count = parcel.readInt() , count indicates how many element in the return list.
To decode the CellInfo , it should call CellInfo.Creator.readFromParcel(parcel) and depends on the count, it should be called multiple times to fully decode them all
Just give an example to explain the format of printed parcel data
the first and last
00000000
seems the open and close tags of the content, therefore just skip these chunks.then for the
00000001 00000001 00000003
, the first00000001
seems to indicate a successful call. Here the expected call return isList<CellInfo>
, hence the second00000001
is the length of the list.Since the encoding is using little endian, the
00000001
should be reversed to01000000
then theParcel
can usereadInt()
correctly, in this caseval count = parcel.readInt()
, count indicates how many element in the return list.To decode the
CellInfo
, it should callCellInfo.Creator.readFromParcel(parcel)
and depends on thecount
, it should be called multiple times to fully decode them all