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" >
使用应用程序类传递数据。您可以在那里保留对套接字连接的引用。