0

我有一个连接到 wifi 接入点的应用程序,然后连接到端口 50,000 上的本地服务器。在 API < 29 上运行良好。但在 29 中,我必须使用 ConnectivityManager 而不是 WifiManager。得到那个工作没问题。问题是之后连接到服务器。该设备的行为就像端口 50,000 已关闭,但我这里还有其他设备可以正常连接。但是,如果我告诉设备连接到端口 80 上的同一台服务器(这也是开放的),繁荣,即时连接。所以我连接到接入点并且服务器可以访问,我只是无法让它连接到 50,000。我是否需要一些特殊权限才能访问端口> 1024?我尝试将 Internet 权限添加到我的清单中,但如果我添加了 NetCapability 功能。互联网然后回调被立即调用 OnUnavailable。甚至不尝试。我也有功能 NotRestricted 和 Trusted 。有人知道我在这里缺少什么吗?

4

1 回答 1

1

wifi 切换成功并调用 OnAvailable 后,您必须调用 ConnectivityManager.BindProcessToNetwork()。

于 2020-02-06T23:30:30.920 回答