在 Intent 中传递对象引用,而不实现可序列化或可 Parcelable
我知道类似的问题已经被问过很多次了。我想我读了大部分。但没有一个答案是适用的。
我需要通过 Intents(活动调用/广播)传递复杂的对象。一切都在我的过程中完成。这就是为什么我认为没有理由将我的对象写入Streams,只是为了在几毫秒后重新组装它们。我想通过我的应用程序传递我的对象引用。有没有办法做到这一点。
由于我的应用程序将连续多次广播同一事件,因此我不能依赖静态成员。我需要为我广播的内容获得完全相同的对象。
这就是为什么我正在考虑一个静态的“引用持有者”,它将接受一个对象并返回一个整数,该整数在其内部列表中标识此对象,以便我可以通过.putExtras传递此整数。但是据我所知Java,我无法在添加后从此列表中清理此对象,因为多个侦听器可以插播在同一个对象中,并且我必须永远将其保留在我的参考持有者中(假设线程可能随时恢复 - 甚至2分钟后)。
有什么想法吗?我做错了什么吗?或者任何关于如何清理我的引用的想法(可能在几秒钟之后?这可能会导致崩溃,但它似乎比编写无缘无故组装和重新组装我的对象的代码更适用)