Android 在活动之间传递未序列化的对象

Android 在活动之间传递未序列化的对象,android,android-activity,Android,Android Activity,我有一个使用以下流与服务器端会话的活动: socket = new Socket("10.0.2.2", 7777); outStream = new ObjectOutputStream(socket.getOutputStream()); inStream = new ObjectInputStream(socket.getInputStream()); 我正在启动活动B,其中我正在生成地质点(未序列化)。 现在,我想将地理点发送到服务器。 我怎么做 我试过: 1.使用Intent将地质点

我有一个使用以下流与服务器端会话的活动:

socket = new Socket("10.0.2.2", 7777);
outStream = new ObjectOutputStream(socket.getOutputStream());
inStream = new ObjectInputStream(socket.getInputStream());
我正在启动活动B,其中我正在生成地质点(未序列化)。
现在,我想将地理点发送到服务器。 我怎么做

我试过:
1.使用Intent将地质点返回活动A。但它仅在活动B完成时工作,我还不想关闭活动B。
2.将外流、内流从活动A发送到B,但它们未序列化


有什么想法吗?

在这种情况下,您可能希望通过覆盖
应用程序本身来使用全局变量

例如:

public class MyOverridenApp extends Application {

    private static ObjectOutputStream outStream = null;
    private static ObjectInputStream inStream = null;

    public static void setOutStream(ObjectOutputStream outStream) {
        MyOverridenApp.outStream = outStream;
    }

    public static ObjectOutputStream getOutStream() {
        return MyOverridenApp.outStream;
    }
}
并在活动中使用适当的调用来设置/获取扩展流

请记住在清单中将其设置为您的应用程序:

<application androidName=".MyOverridenApp" android:icon="@drawable/icon" android:label="@string/app_name" >

使用应用程序类传递数据。您可以在那里保留对套接字连接的引用。