首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >最新android不再发送UDP广播数据包

最新android不再发送UDP广播数据包
EN

Stack Overflow用户
提问于 2017-06-13 06:00:30
回答 0查看 498关注 0票数 1

因此,我们一直在安卓(三星Note4)和iOS上运行以下代码,没有遇到任何问题,直到最新的手机开始推出安卓7+ (三星S8,OnePlus3T)。我们将发送我们的广播,以确定将响应此消息的其他系统。现在我们发现UDP在电话上被阻止了。

我们已经使用Evothing来测试UDP是否被阻止。在编程上,我不认为我错过了任何东西来让它工作。

我们已经注意到WiFi在安卓系统上的工作方式发生了变化。如果WiFi连接没有互联网,系统的行为似乎会有所不同。

代码语言:javascript
复制
    chrome.system.network.getNetworkInterfaces(function (networkIfaceArray) {
         for (var i = 0; i < networkIfaceArray.length; i++) {
                var iface = networkIfaceArray[i];
                if (iface.prefixLength < 32) {
                    addr_array = parseIP(iface.address);
                    mask = 32 - iface.prefixLength;
                    mask = Math.pow(2, mask) - 1;
                    pointer = 3;
                    while (mask > 255) {
                        addr_array[pointer++] = 255;
                        mask -= 255;
                    }
                    addr_array[pointer] = mask;
                    udp_sock.send(app.socketId, message,
                    addr_array.join("."), 5000, function (sendInfo) {
                        //check for response
                });
            }
        }
    });

我们已经尝试过this answer,他们建议使用不同的端口。这里的大多数帖子都比版本7旧,所以没有解决我们的问题。

同样,它仍然适用于安卓和iOS的老版本。如果你遇到这个问题,请分享。

EN

回答

页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44509371

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档