我正在研究 imx6,我正在尝试使用 Qt 应用程序通过 Dbus 连接到 wifi 网络。该应用程序通过 Dbus 正确连接到 connman,并且我正确接收了 wifi 服务。问题是,当我尝试连接到 wiif 网络时,我发现了这个错误:
接口“net.connman.Service”上带有签名“ss”的方法“Connect”不存在
我在 Qt 应用程序中用于连接到 wifi 网络的代码是:
QDBusInterface *iface =
new QDBusInterface("net.connman","/net/connman/technology/wifi","net.connman.Service",QDBusConnection::systemBus());
if (!iface->isValid())
{
qDebug() << Q_FUNC_INFO << "Fail to connect to the Connman Technology interface: " << QDBusConnection::systemBus().lastError().message();
}
QDBusReply<void> reply = iface->call("Connect","/net/connman/service/wifi_88da1a4db14c_41684179_managed_psk","password");
if (!reply.isValid())
{
qDebug() << "Call connect result: " << reply.error().message();
}
当我尝试使用 connmanctl 使用 shell 命令连接到 wifi 网络时,它就像一个魅力。