我有两个环境(DEV和PROD)。两者都是Linux运行Connman作为网络管理员。在我的DEV环境中,当我插入/拔出以太网电缆时,信号配置已正常工作。另一方面,在PROD环境中,对于具有相同hw规格的计算机,不发出该信号。我在这个主题中的问题是:它是基于Qt,特别是QtNetwork,发出这个信号?他们的依赖性是什么?我假设我在PROD环境中有任何缺少的依赖关系,因为这不能正常工作。
我已经阅读了这个QNetworkConfigurationManager::configurationChanged signal not getting called for ETHERNET config changes但是在这个问题中,用户要求的是Windows,而不是Linux。无论如何它都没有解决。
编辑:检查QNetworkConfigurationManager :: capabilities,DEV环境中的结果是QFlags(0x1 | 0x10 | 0x20 | 0x40),而在PROD中,env是QFlags()(空)。因此,这可能是PROD环境中QtNetwork后端的问题。
答案 0 :(得分:0)
问题是app二进制文件没有得到正确的插件路径。在这种情况下,所需的插件是承载。您可以使用 QLibraryInfo :: location(QLibraryInfo :: PluginsPath)检查此调试。如果您的路径不正确,可以使用qt.conf文件或设置路径来解决它。这两种方法都在此Qt documentation article
中指定