无后端收集不可用,无法访问

时间:2017-06-12 06:46:22

标签: android backendless

我正在尝试将Parse项目迁移到Backendless。 因此,我正在学习学习Backendless的教​​程。 该教程由Samantha Squires撰写,它在Youtube上。 到现在为止,一切都很顺利,直到我到达这里。 addFriends是一个搜索2个朋友的Backendless数据库并添加它们的函数,但查询似乎不起作用,即使官方文档具有完全相同的查询。

private void addFriends (String firstUserName, String secondUserName){
        query.setWhereClause(String.format("name = '%s' or name = '%s'", firstUserName, secondUserName));

        Backendless.Persistence.of(BackendlessUser.class).find(query, new AsyncCallback<BackendlessCollection<BackendlessUser>>() {
            @Override
            public void handleResponse(BackendlessCollection<BackendlessUser> response) {

            }

            @Override
            public void handleFault(BackendlessFault fault) {

            }
        });

但BackendlessCollection似乎不像一个有效的类。 我尝试了一切,我甚至尝试了一切,但我找不到BackendlessCollection。

当我按照Android studio的IDE

的建议离开我的代码时
 private void addFriends (String firstUserName, String secondUserName){
        //Find both users
        //Return all users where the name equals firstUserName and name equals secondUserName
        query.setWhereClause(String.format("name = '%s' or name = '%s'", firstUserName, secondUserName));

        Backendless.Persistence.of(BackendlessUser.class).find(query, new AsyncCallback<List<BackendlessUser>>() {
            @Override
            public void handleResponse(List<BackendlessUser> response) {

            }

            @Override
            public void handleFault(BackendlessFault fault) {

            }
        });

当我这样做时,我会在query上收到错误消息。

Wrong 1st argument type. Found: 'com.backendless.persistence.BackendlessDataQuery', required: 'com.backendless.persistence.DataQueryBuilder'

1 个答案:

答案 0 :(得分:0)

BackendlessCollection仅在3.x版本中可用,即将停止。在版本4中,您应该使用内置的java CollectionList。您可以在此处找到完整的v4文档:https://backendless.com/docs/android/doc.html

版本4的代码应类似于以下内容:

DataQueryBuilder queryBuilder = DataQueryBuilder.create();
queryBuilder.setWhereClause( String.format("name = '%s' or name = '%s'", firstUserName, secondUserName) );

Backendless.Data.of( BackendlessUser.class ).find( queryBuilder, new AsyncCallback<List<BackendlessUser>>() {
            @Override
            public void handleResponse(List<BackendlessUser> response) {

            }

            @Override
            public void handleFault(BackendlessFault fault) {

            }
        });