0

我是 BlackBerry 10 开发的新手,我正在尝试从 RESTful 服务获取数据,但我不知道该怎么做……如果有人可以帮助我,那就太好了。我已阅读 Blackberry 文档中有关网络访问的所有文档,但我不知道如何开始,我尝试了一些示例,但它并没有解决我的问题。请帮我...

谢谢你..

应用程序.cpp

void ApplicationUI::initiateRequest(){
    // Start the activity indicator.
    myActivityIndicator->start();
    myLabel->setVisible(true);
    myLabel->setText("Retrieving contact list ...");
    // Create and send the network request.
    QNetworkRequest request = QNetworkRequest();
    request.setUrl(QUrl("http://developer.blackberry.com/cascades/files/documentation/images/model.xml"));
    myNetworkAccessManager->get(request); 
}

void ApplicationUI::requestFinished(QNetworkReply* reply)
{
    myActivityIndicator->stop();
    myLabel->setVisible(false);

    // Check the network reply for errors.
    if (reply->error() == QNetworkReply::NoError)
    {
        // Open the file and print an error if the file cannot be opened.
        if (!myFile->open(QIODevice::ReadWrite))
        {
            // Report: "Failed to open file"
            return;
        }

        // Write to the file using the reply data and close the file.
        myFile->write(reply->readAll());
        myFile->flush();
        myFile->close();

        // Create the data model using the contents of the file.
        XmlDataModel *dataModel = new XmlDataModel();
        dataModel->setSource(QUrl("file://" + QDir::homePath() + "/model.xml"));

        // Set the new data model on the list.
        myListView->setDataModel(dataModel);
    }
    else
    {
        myLabel->setText("Problem with the network");
    }

    reply->deleteLater();
}

main.qml

Page {
    Container {
            id: cntrListview

            // A list that has two list item components, one for a header
            // and one for contact names. The list has an object name so
            // that we can set the data model from C++ code.
            ListView {
                objectName: "list"
                topPadding: 6.0
                bottomPadding: 6.0
                leftPadding: 6.0
                rightPadding: 6.0

                // The app loads an XML file called model.xml that is used
                // as the data model for the ListView to populate our
                // contact list. This XML file is downloaded in our
                //  app's constructor in the accompanying C++ code.
                dataModel: XmlDataModel {
                }
                listItemComponents: [
                    // The header list item displays a title along with a counter
                    // that displays the number of children. Each child is a name
                    // in the contact list.
                    ListItemComponent {
                        type: "header"
                        Header {
                            title: ListItemData.title
                            subtitle: (ListItem.initialized ? ListItem.view.dataModel.childCount(ListItem.indexPath) : 0)
                        }
                    },
                    // The contact list item displays the name of the contact.
                    ListItemComponent {
                        type: "contacts"
                        StandardListItem {
                            title: ListItemData.title
                        }
                    }
                ]
            }
        }
}

这是我尝试过的,但是我的 Rest Resturns JSON 数据,我想得到它,但我不知道如何,我尝试了上面的示例以获得任何想法,但我无法得到它,我是这个新..

请帮助我..谢谢...

4

1 回答 1

1

如果问题只是您正在阅读 JSON,但您的代码适用于 XML,那么您必须将您XmlDataModel的 a替换GroupDataModelJsonDataAccess. 您需要的一切都记录在这里

于 2013-07-28T08:36:55.960 回答