在ChromeOS上运行UDP发送器/接收器Android APP

时间:2019-06-04 10:09:02

标签: android google-chrome server udp client

我正在使用UDP发送器/接收器功能将当前计算机ip地址广播到255.255.255.255地址的应用程序上工作。作为响应,UDP服务器从其他设备(在我的情况下为付款终端)的IP地址给出响应。在基于Android的设备(如平板电脑或手机)上,它可以正常工作。问题始于ChromeOS计算机。我广播了信息,但是在运行WireShark的第二台计算机上没有结果。我从页面https://developer.android.com/topic/arc#check_for_networking_requirements知道 ChromeOS上运行的android应用位于某些防火墙后面,并且无法直接访问WiFi设备。唯一的解决方案是使用Android网络服务发现,但我不知道在这种情况下如何使用它。下面,我粘贴了除Chrome OS之外所有地方都可以使用的UDP发送器代码

fun sendDatagramPacketSender(
        bytePacketToSend: ByteArray,
        targetIP: String,
        targetPort: Int
): Completable {
    return fromAction {
        try {
            val datagramPacket =
                    DatagramPacket(bytePacketToSend, bytePacketToSend.size, InetAddress.getByName(targetIP), targetPort)

            mDatagramSocket.send(datagramPacket)
        } catch (e: Exception) {
            Log.e(TAG, e.message)
        }
    }
}

对于我的问题或在我的情况下使用NSD的示例,您还有其他解决方案吗?

0 个答案:

没有答案