qt - QNetworkConfigurationManager::configurationAdded 信号不工作

qt - QNetworkConfigurationManager::configurationAdded signal not working

我有两个环境(DEV 和 PROD)。两者都是 linux 运行 Connman 作为网络管理员。在我的 DEV 环境中,当我 plug/unplug 以太网电缆时,添加的信号 configurationAdded 工作正常。另一方面,在 PROD env 中,具有相同硬件规格的计算机不会发出此信号。我在这个主题中的问题是:它是基于 Qt,特别是 QtNetwork,发出这个信号?他们的依赖是什么?我假设我在 PROD env 中缺少任何依赖项,因为它无法正常工作。

我读过这个 QNetworkConfigurationManager::configurationChanged signal not getting called for ETHERNET config changes 但在这个问题中用户要求 windows,而不是 linux。无论如何都没有解决。

编辑: 检查QNetworkConfigurationManager::capabilities,DEV 环境中的结果是 QFlags(0x1|0x10|0x20|0x40) 而在 PROD 环境中是 QFlags()(空).所以这可能是 PROD 环境中 QtNetwork 后端的问题。

问题是应用程序二进制文件没有获得正确的插件路径。在这种情况下,需要的插件是承载。您可以使用 QLibraryInfo::location(QLibraryInfo::PluginsPath) 检查此调试。如果你的路径不对,可以使用qt.conf文件或者设置路径来解决。这两种方法都在Qt documentation article

中指定