首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >黑莓10级联-检查互联网连接

黑莓10级联-检查互联网连接
EN

Stack Overflow用户
提问于 2012-11-26 20:32:09
回答 4查看 1.9K关注 0票数 6

我正在为BB-10开发一个使用web服务的应用程序。在这里,我想同时解析get和post方法中的JSON,并检查Internet的可用性。

我该怎么做呢?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-12-15 21:39:24

使用以下代码检查Internet可用性

代码语言:javascript
复制
bool app::isNetworkAvailable() {
    QNetworkConfigurationManager netMgr;
    QList<QNetworkConfiguration> mNetList = netMgr.allConfigurations(QNetworkConfiguration::Active);

    return (mNetList.count() > 0 && netMgr.isOnline());
}
票数 5
EN

Stack Overflow用户

发布于 2013-11-29 02:43:42

我的老师创建了一个qml组件,用来显示是否有连接以及连接的类型(wifi、蓝牙、运营商等)。它还会在连接状态或使用的接口发生更改时发送信号。

代码托管在github:https://github.com/rodrigopex/CheckInternetMicroSample

票数 1
EN

Stack Overflow用户

发布于 2013-09-05 17:09:36

1.HPP文件

代码语言:javascript
复制
class controller : public QObject
{
 Q_OBJECT
public:
 controller(bb::cascades::Application *app);


public Q_SLOTS:
 void sendRequest(const QString &countryID);


private Q_SLOTS:

void onFinished();

};

2.CPP文件

代码语言:javascript
复制
void controller::sendRequest(const QString &countryID)
{

QNetworkAccessManager* networkAccessManager = new QNetworkAccessManager(this);

const QString queryUri = QString::fromLatin1("http://192.168.1.251:410/Mobile/Service1.svc/english/Category?CountryID=%1").arg(countryID);

QNetworkRequest request(queryUri);

QNetworkReply* reply = networkAccessManager->get(request);

bool ok = connect(reply, SIGNAL(finished()), this, SLOT(onFinished()));
 Q_ASSERT(ok);
 Q_UNUSED(ok);
}


void controller::onFinished()
{
 QNetworkReply* reply = qobject_cast<QNetworkReply*>(sender());
 QString response;
 if (reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt() == 200)
 {
 JsonDataAccess jda;
 QVariantMap map = jda.loadFromBuffer(reply->readAll()).toMap();

QVariantList addresses = map["GetCategoryResult"].toList();

foreach(QVariant var, addresses) {
 QVariantMap addressMap = var.toMap();

qDebug() << "CategoryName is " << addressMap["CategoryName"].toString();
 qDebug() << "CategoryID is " << addressMap["CategoryID"].toString();
 }
 }
 else {
 qDebug() << "Server returned code " << reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt();
 }
 }

请在此处查看完整代码-> http://supportforums.blackberry.com/t5/Native-Development/webservice-help-json/m-p/2569953/highlight/false#M46724

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13564925

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档