qt - QNetworkConfigurationManager::configurationAdded 信号不起作用

Posted

技术标签:

【中文标题】qt - QNetworkConfigurationManager::configurationAdded 信号不起作用【英文标题】:qt - QNetworkConfigurationManager::configurationAdded signal not working 【发布时间】:2016-08-22 12:23:25 【问题描述】:

我有两个环境(DEV 和 PROD)。两者都是运行 Connman 作为网络管理器的 linux。在我的 DEV 环境中,当我插入/拔出以太网电缆时,添加的信号配置工作正常。另一方面,在 PROD 环境中,使用具有相同硬件规格的计算机,不会发出此信号。我在这个主题中的问题是:它基于 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 后端的问题。

【问题讨论】:

【参考方案1】:

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

【讨论】:

以上是关于qt - QNetworkConfigurationManager::configurationAdded 信号不起作用的主要内容,如果未能解决你的问题,请参考以下文章

Linux 打包 QT 程序

QT学习之QT 下载安装

Qt 找不到服务 - “org.qt-project.qt.mediaplayer”

[QT]加快qt编译:设置默认多核编译qt

qt + opengl 开发环境的搭建

qt creator和qt的区别