提问者:小点点

服务器连接/交互(Java/安卓)


我正在做一个android项目,需要通过发送数据包和接收/解码响应与主服务器交互。

用户应该能够通过位于项目中任何位置的自定义方法与服务器交互/发送数据包。

我遇到的主要问题是在我的项目中包含套接字。

我曾尝试在一个线程上运行服务器,然后在一个服务上运行,但每当我尝试从外部类访问send方法时,总是会遇到同样的问题:

I/Socket: java.util.concurrent.ExecutionException: java.io.IOException: android.os.NetworkOnMainThreadException

我在这里做错了什么?

如有任何帮助,我们将不胜感激。


共1个答案

匿名用户

您可以使用Handler尝试此操作。这里有个例子。

final Handler h = new Handler(Looper.getMainLooper());
// in your thread's run() 
public void on run(){
h.post(new Runnable(){
    @Override 
      public void run(){
  // here put your code (those giving exception)
     }   });

  }
}