我需要序列化一个综合的应用程序(游戏)状态,通过网络传输或保存到磁盘并在以后检索.
当然,Bundles用于在几个用例中保存/恢复状态,因此使用它们将是理想的.但是,由于某种原因,Bundle不可序列化.
寻找一个解决方案只是出现了将Bundle转变为包裹然后编组的不可接受的黑客攻击,但这不是一个可接受的解决方案,因为无法保证可以在以后或之后解组数据.远程设备.
现在看来,唯一的解决方案似乎是从Bundle获取整个键集,获取每个包含的Object,在每个Object.Class上做一个相当大的开关/ case并手动构建一个巨大的ByteBuffer或类似的这些数据以及大小和类型信息,以便成功地重建另一方的整个事物.
不完全顺利.
有谁知道更好的方法?也许某人已经为Bundle创建了一个实用程序函数来执行此操作?
归档时间: |
|
查看次数: |
1257 次 |
最近记录: |