Java UDP发送不起作用Android Studio
我已将ESP8266设置为UDP服务器。。我已经尝试使用Delphi7作为UDP客户端,它可以工作。。但是有了这个安卓代码,它什么也没有收到。。请帮帮我..您没有捕获肯定会抛出的异常。你不能在主线程上运行任何网络操作。至少,你应该做一些事情来捕获异常。记录它您可能会遇到NetworkOnMainThreadException,因为您正试图在主线程上执行网络操作。试着把它放在一个异步任务中,就像下面解释的那样。@AndrewBrooke ok,我很困惑。。请告诉我如何使用这些异步任务。。图特Java UDP发送不起作用Android Studio,java,android,udp,esp8266,Java,Android,Udp,Esp8266,我已将ESP8266设置为UDP服务器。。我已经尝试使用Delphi7作为UDP客户端,它可以工作。。但是有了这个安卓代码,它什么也没有收到。。请帮帮我..您没有捕获肯定会抛出的异常。你不能在主线程上运行任何网络操作。至少,你应该做一些事情来捕获异常。记录它您可能会遇到NetworkOnMainThreadException,因为您正试图在主线程上执行网络操作。试着把它放在一个异步任务中,就像下面解释的那样。@AndrewBrooke ok,我很困惑。。请告诉我如何使用这些异步任务。。图特
public class MainActivity extends ActionBarActivity {
LinearLayout vpad;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
vpad.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
String vtmp="Testing";
send_udp(vtmp);
return true;
}
});
public void send_udp(String msg){
DatagramSocket cs=null;
InetAddress ipx=null;
byte[] ip_byte=new byte[]{(byte)192,(byte)168,(byte)4,(byte)1};
try {
ipx = InetAddress.getByAddress(ip_byte);
} catch (Exception E){
}
byte[] xdata=msg.getBytes();
DatagramPacket sp=new DatagramPacket(xdata,xdata.length,ipx,87);
try{
cs=new DatagramSocket();
cs.send(sp);
} catch (Exception E) {
} finally {
if(cs!=null){
cs.close();
}
}
}