Skip to content

Instantly share code, notes, and snippets.

@lannyf77
Created April 3, 2020 19:16
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save lannyf77/87fc744cac3ff2c8e7d6fb7163e9039e to your computer and use it in GitHub Desktop.
Save lannyf77/87fc744cac3ff2c8e7d6fb7163e9039e to your computer and use it in GitHub Desktop.
fun testNCPStreamItemParcel(list: List<ParcelableStreamItem>?) {
list?.let {
for ((i, parceableStreamItem) in list.withIndex()) {
Log.i("+++", "+++ org instagram($i): ${parceableStreamItem?.social?.instagram?.data?.id}, ${parceableStreamItem?.social?.instagram?.data?.caption}\n" +
"tweet: ${parceableStreamItem?.social?.twitter?.data?.id}, ${parceableStreamItem?.social?.twitter?.data?.text}")
try {
val parcel = obtain()
parceableStreamItem.writeToParcel(parcel, 0)
parcel.setDataPosition(0)
val parcebleItem: ParcelableStreamItem = ParcelableStreamItem.CREATOR.createFromParcel(parcel)
Log.v("+++", "+++ 111 instagram($i): ${parcebleItem?.social?.instagram?.data?.id}, ${parcebleItem?.social?.instagram?.data?.caption}\n" +
"tweet: ${parcebleItem?.social?.twitter?.data?.id}, ${parcebleItem?.social?.twitter?.data?.text}")
val serializedBytes = Parcel.obtain().run {
writeParcelable(parceableStreamItem, 0)
marshall()
}
val result = Parcel.obtain().run {
unmarshall(serializedBytes, 0, serializedBytes.size)
setDataPosition(0)
readParcelable<Parcelable>(ParcelableStreamItem::class.java.classLoader) as? ParcelableStreamItem
}
val social = result?.social
Log.d("+++", "+++ 222 instagram($i): ${social?.instagram?.data?.id}, ${parceableStreamItem?.social?.instagram?.data?.caption}\n" +
"tweet: ${social?.twitter?.data?.id}, ${social?.twitter?.data?.text}")
} catch (ex: Throwable) {
Log.e("+++", "+++ !!! exceptintion $i: $ex", ex)
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment