小编Kun*_*ani的帖子

UDP打孔Java示例

我希望借助具有静态IP的服务器与两个客户端进行UDP打孔.服务器在端口7070和7071上等待两个客户端.之后,它会相互发送IP地址和端口.这部分工作正常.但是我无法在两个客户之间建立通信.我在不同的Wifi网络和3G移动网络中尝试了代码.客户端程序抛出IO-Exception"无路由到主机".客户端代码用于两个客户端.一旦用7070端口执行,一次用7071执行.

您认为我是否正确实施了UDP打孔概念?有什么想法让它发挥作用?这是服务器代码,然后是客户端代码.

谢谢你的帮助.

服务器代码:

public class UDPHolePunchingServer {

    public static void main(String args[]) throws Exception {

    // Waiting for Connection of Client1 on Port 7070
    // ////////////////////////////////////////////////

    // open serverSocket on Port 7070
    DatagramSocket serverSocket1 = new DatagramSocket(7070);

    System.out.println("Waiting for Client 1 on Port "
            + serverSocket1.getLocalPort());

    // receive Data
    DatagramPacket receivePacket = new DatagramPacket(new byte[1024], 1024);
    serverSocket1.receive(receivePacket);

    // Get IP-Address and Port of Client1
    InetAddress IPAddress1 = receivePacket.getAddress();
    int port1 = receivePacket.getPort();
    String msgInfoOfClient1 = IPAddress1 + "-" + …
Run Code Online (Sandbox Code Playgroud)

java sockets udp tunneling hole-punching

12
推荐指数
1
解决办法
1万
查看次数

材料设计datepickerdialog

我想知道我是否可以为我的Android应用程序实现材料设计datepickerdialog

代码:

    import java.util.Calendar;
    import android.app.DatePickerDialog;
    import android.app.Dialog;
    import android.os.Bundle;
    import android.support.v4.app.DialogFragment;
    import android.widget.DatePicker;
    import android.widget.EditText;
    public class SelectDateFragment  extends DialogFragment implements
    DatePickerDialog.OnDateSetListener {
    EditText mEdit;
    public Dialog onCreateDialog(Bundle savedInstanceState) {
          final Calendar calendar = Calendar.getInstance();
          int yy = calendar.get(Calendar.YEAR);
          int mm = calendar.get(Calendar.MONTH);
          int dd = calendar.get(Calendar.DAY_OF_MONTH);
          return   new DatePickerDialog(getActivity(), this, yy, mm, dd);
    }
    @Override
    public void onDateSet(DatePicker view, int yy, int mm, int dd) {
         populateSetDate(yy, mm + 1, dd);
    }
    public void populateSetDate(int year, int …
Run Code Online (Sandbox Code Playgroud)

android datetimepicker

2
推荐指数
1
解决办法
2万
查看次数

标签 统计

android ×1

datetimepicker ×1

hole-punching ×1

java ×1

sockets ×1

tunneling ×1

udp ×1