【发布时间】:2017-05-06 13:16:53
【问题描述】:
服务器套接字抛出此错误并且应用程序完全崩溃。我在我的 onCreate() 方法中调用了这个线程。当活动第一次运行时它很好,但在完成并返回此活动后给出以下错误。
'java.net.Socket java.net.ServerSocket.accept()' 在空对象引用上
private class ClientConnectionThread implements Runnable {
ServerSocket serversocket;
public ClientConnectionThread(){
try{
serversocket = new ServerSocket(5005);
serversocket.setReceiveBufferSize(1024*1024);
Log.v("BoardCastRunning","BoardCast Server Waiting");
}catch (IOException ex){
Log.v("BoardCastError",ex.toString());
}
}
@Override
public void run() {
while(true){
try{
streamClientSocket = serversocket.accept();
Log.v("BoardCast","New Connection");
videoBroadcastSockets.add(streamClientSocket);
runOnUiThread(new Runnable() {
@Override
public void run() {
Utils.shortToast(context,
"Client connected from: "
+ streamClientSocket.getInetAddress().getHostAddress()
+ " " + streamClientSocket.getPort());
}
});
}
catch(IOException ex){
Log.v("BoardCastError",ex.toString());
}
}
}
}
【问题讨论】:
-
您忘记了 NullPointerException 这个词。你为什么没有提到完整的消息?
-
因为您可能会遇到 NetworkOnMainThreadException。
标签: android sockets serversocket