我在使用Parcelables
在活动之间共享信息时遇到了问题。我对实现没有任何问题,但是它在某些手机上的行为。看来,存储在里面的信息太多了。这会导致在对象被取消编组时抛出MemoryExceptions。我在文档中找不到任何内存限制。在Parcel
被写入Parcelable
之前,如果给定的信息很小,可以在Parcel
中写入/读取它们的最佳方法是什么?
答案 0 :(得分:1)
我想< = Integer.MAX_VALUE
/**
* Returns the total amount of data contained in the parcel.
*/
public final native int dataSize();
答案 1 :(得分:0)
您在包裹中存储了哪些类型的数据?我注意到如果你陷入困境(即不确保以相同的方式存储和检索数据),你最终会得到非常奇怪的结果,有些甚至会导致你的应用程序抛出OutOfMemoryException。
TLDR;请务必阅读&以相同的顺序写入包裹。