黑莓级联 10 中的网络连接检查
Network connectivity check in blackberry cascades 10
我正在尝试在用户打开应用程序或应用程序进入前台时执行网络连接检查。下面是示例代码
void ApplicationUI::onFullscreen()
{
qDebug()<<"Application has entered foreground";
QNetworkConfigurationManager mgr;
QList<QNetworkConfiguration> activeConfigs = mgr.allConfigurations(QNetworkConfiguration::Active);
if (activeConfigs.count() > 0)
{
qDebug()<<"Has Internet connection";
}
else
{
qDebug()<<"No Internet connection";
}
}
这总是打印有互联网连接,即使网络连接已关闭。有什么想法吗?
您可以使用 QNetworkConfigurationManager.isOnline()。
QNetworkConfigurationManager mgr;
mgr.isOnline();
如果您想收到有关在线状态变化的通知,那么您也可以连接到 QNetworkConfigurationManager::onlineStateChanged(bool isOnline) 信号。
connect(mgr, SIGNAL(onlineStateChanged(bool)), this, SLOT(onOnlineStateChanged(bool)));
我正在尝试在用户打开应用程序或应用程序进入前台时执行网络连接检查。下面是示例代码
void ApplicationUI::onFullscreen()
{
qDebug()<<"Application has entered foreground";
QNetworkConfigurationManager mgr;
QList<QNetworkConfiguration> activeConfigs = mgr.allConfigurations(QNetworkConfiguration::Active);
if (activeConfigs.count() > 0)
{
qDebug()<<"Has Internet connection";
}
else
{
qDebug()<<"No Internet connection";
}
}
这总是打印有互联网连接,即使网络连接已关闭。有什么想法吗?
您可以使用 QNetworkConfigurationManager.isOnline()。
QNetworkConfigurationManager mgr;
mgr.isOnline();
如果您想收到有关在线状态变化的通知,那么您也可以连接到 QNetworkConfigurationManager::onlineStateChanged(bool isOnline) 信号。
connect(mgr, SIGNAL(onlineStateChanged(bool)), this, SLOT(onOnlineStateChanged(bool)));