【发布时间】:2015-12-15 20:51:08
【问题描述】:
嘿嘿,
我正在为 Android 编写的 Messenger 出现问题。问题是,电话和 PC 上的插座连接没有任何问题。但是他们无法获得 ObjectInputStream 和 ObjectOutputStream (InputStream 和 OutputStream 工作正常:/)。不在手机上,也不在电脑上。
我在 Google 上找不到任何解决方案;找了一整天....这是否是由于系统之间的一些冷漠造成的正常现象?
非常感谢您的帮助;)
@Override
public void run() {
inputStream=null;
outputStream=null;
System.out.println("Streams initialized");
try{
inputStream=new ObjectInputStream(clientSocket.getInputStream());
System.out.println("Inputstream");
outputStream=new ObjectOutputStream(clientSocket.getOutputStream());
System.out.println("Outputstream");
SendObject sendObject=null;
System.out.println("Streams get");
connected=true;
while(inputStream!=null&&connected){
}
}catch (IOException e){
e.printStackTrace();
}
}
这是服务器端的代码(int the ThreadHandler),只是停在 inputStream=new ...
接下来,这是智能手机上的代码
private void initNetwork(){
try {
Log.d("Networking","init");
final int SERVERPORT = 21000;
final String SERVERADRESS = "192.168.2.22";
socket = new Socket();
Log.d("Networking", "new Socket created");
socket.connect(new InetSocketAddress(SERVERADRESS, SERVERPORT), 3000);
Log.d("Networking", "Socket connected");
ois =new ObjectInputStream(socket.getInputStream());
oos =new ObjectOutputStream(socket.getOutputStream());
connected = true;
Log.d("Internet", "Connected");
}catch (InterruptedIOException e){
Log.d("Networking","Imeout");
}catch (IOException e){
connected=false;
Log.d("Internet","Not Connected");
e.printStackTrace();
}
}
AndroidStudio 显示的最后一条日志是 Log.d("Networking", "Socket connected");
【问题讨论】:
-
如果您遇到任何问题,请将您的代码添加到问题和错误堆栈跟踪中。
-
您必须为您的对象共享相同的定义,包括序列号。我猜你是这么做的,但我能想到的信息就这么少
-
没有任何错误,看起来像超时:/
标签: java android objectinputstream