问题描述
我正在使用wifiManager.startLocalOnlyHotspot启动无法访问互联网的热点,以便连接设备可以使用套接字将文件发送到该设备。一切都按预期工作,但当正在ping的同一设备的移动数据打开时,我无法ping通所连接的wifi热点设备。禁用移动数据后,我可以ping通到从实用程序类获得的服务器IP ,我正在发布该实用程序方法。谁能向我解释我所缺少的概念?
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER
解决方法
您可以尝试为连接的wifi热点设置默认网络,以便将来仅使用此wifi网络创建所有套接字。
val request = NetworkRequest.Builder()
request.addTransportType(NetworkCapabilities.TRANSPORT_WIFI)
connectivityManager.registerNetworkCallback(request.build(),object : NetworkCallback() {
override fun onAvailable(network: Network) {
currentNetwork = network
val success = ConnectivityManager.setProcessDefaultNetwork(network)
}
})