【发布时间】:2016-02-13 10:28:50
【问题描述】:
我是 android 新手,我有一个问题。
我想在我的整个 android 程序中只有一个类的实例,这样它的属性在程序期间不会改变,但我也想在我的所有活动中调用它的方法。
通过一些搜索,我意识到我可以通过实现类作为 Serializable 或 Parcelable 传递我的对象。我这样做了,但出现以下错误:
java.lang.RuntimeException: Parcelable encountered IOException writing serializable object
java.io.NotSerializableException: microsoft.aspnet.signalr.client.hubs.HubConnection
如您所见,我的类属性之一是 HubConnection,它位于 microsoft 包中,我无法使其可序列化。
如何将 SignalR 类的对象传递给其他活动?我有什么选择?
public class SignalR implements Serializable {
private HubConnection connection;
private HubProxy proxy;
//some methods
}
【问题讨论】:
-
您可以编写 BaseActivity 并将所有活动扩展到 BaseActivity。你在 BaseActivity 中创建这个对象,你可以调用每一个活动。
-
@Sina 您的问题标题应该是“如何使实例在我的应用程序中的任何位置可用或可访问”
-
@RahulChaurasia 已更新。谢谢
-
@mustafasevgi 谢谢你。但我认为这个选项是最后一个解决方案。
标签: java android android-intent parcelable serializable