【问题标题】:Opening a socket using Wifi connection in android在android中使用Wifi连接打开一个套接字
【发布时间】:2016-10-20 07:07:30
【问题描述】:

我有一个PCan wireless device,可以扮演他们称之为“微接入点”的角色。这个概念是让它路由器和其他设备连接到它。通过这个连接,我可以使用 TCP 或 UDP 发送/接收 CAN 帧。主要目标是连接到这个 Wifi 并打开一个套接字并在 android M 中发送/接收 TPC/UPD 帧。

我编写了一个 android 活动,它搜索所有可用的 Wifi 并通过一个我可以成功连接的按钮连接到它。

连接后,我尝试打开一个套接字,但失败了。我也尝试了不同的超时:

button2.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        new Thread(new Runnable() {
            @Override
            public void run() {

                for (int i = 0; i <= 255; ++i) { // I wrote this for loop to check all possibilities!
                    String ip = "192.168.1." + i;
                    try {
                        Log.i(TAG, "Try ip: " + ip);
                        Socket socket = new Socket();
                        socket.connect(new InetSocketAddress(ip, 50000), 100);
                        Log.e(TAG, "Connected!");
                    } catch (IOException e) {
                        Log.e(TAG, "Exception is catched!");
                    }
                }

            }
        }).start();
    }
});

谁能告诉我如何打开一个套接字? 以下是设备上的信息:

ip:192.168.1.10

端口:50000

网关:192.168.1.199

更新:

我不知道我是否以正确的方式来克服这个问题。简短地说:我想连接到这个无线设备并发送/接收 tcp 和 UPD 帧。不幸的是,我对网络的了解非常有限。

【问题讨论】:

  • 这是套接字问题还是“如何连接到 wifi 网络”问题?无论哪种方式,似乎都有很多不相关的信息。如果您不在网络上,那么如何制作套接字并不重要。如果你在网络上,那么在制作套接字时是否是 wifi 网络并不重要。
  • @xaxxon 我是没有网络经验的 C++ 人。所以也许这个问题是模棱两可的。问题是如何在此设备上发送/接收数据?我在正确的道路上吗?
  • 可能吗?但是你真的在这里提出了两个问题。一个是“我如何连接到 wifi 网络”,另一个是“我如何制作套接字”。请将帖子限制为一个问题(如果需要,您可以再发一个帖子)
  • 我不知道 PCan 无线设备会这样做,但 TCP/IP 连接是通过三向握手程序建立的。您需要检查的内容 1. 您的 android 设备和 PCan 无线设备在同一网络上。 2. PCan 无线设备充当 tcp/ip 服务器 3.PCan 无线设备在哪个端口监听传入的连接请求。注意:PCan 无线设备可以通过 Internet 访问,然后不需要第一步,只需您的设备即可访问 Internet。
  • 如果您想以编程方式连接您的设备某个特定的 WiFi 网络,那么您应该检查 WifiManager 和这些方法,尤其是 1. addNetwork 2. startScan 3. getScanResults

标签: java android sockets tcp can-bus


【解决方案1】:

似乎无线路由器只接受静态 IP。使用静态 IP 和网关解决了这个问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-01-09
    • 1970-01-01
    • 2014-03-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-07
    相关资源
    最近更新 更多