android - 以字节为单位的包大小

标签 android exception bundle

有什么方法可以知道包大小(以字节为单位)?我问这个问题的意思是我在 onSaveInstanceState< 上的 bundle 中保存可打包对象列表

我需要检查包大小是否达到其大小限制并防止保存更多数据,并防止发生 TransactionTooLarge 异常。

最佳答案

我认为对我来说最简单的方法是:

fun getBundleSizeInBytes(bundle : Bundle) : Int {
  val parcel = Parcel.obtain()
  parcel.writeValue(bundle)

  val bytes = parcel.marshall()
  parcel.recycle()

  return bytes.size
}

关于android - 以字节为单位的包大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45318157/

相关文章:

android - 如何在android中的 GridView 中显示选择的图像

android - 如何判断是否出现了新的 Activity ?

android - 如何将 TypeFace 设置为 PagerTabStrip TextView

python - 在 Python 中引发错误的一种非常优雅的方式是什么

java - 错误处理中的递归?

javascript - 这些js和css文件如何从我的元素中排除?

java - Android Bundle 与字符串的比较

android - 我如何在 android 的 surfaceview 上绘制字节数组?

objective-c - 检查路径是否是 ObjC 中的文件夹/bundle/别名

Java Picasa API 目录列表不起作用