如何在android中的parse.com上从服务器检索所有组名?

时间:2014-04-02 11:49:02

标签: android parse-platform

我在解析api时面临一个大问题。我可以在服务器上创建新组,也可以将用户添加到组中。我在服务器上创建了许多组,如Friends,Sports,College等。但是如何从服务器检索所有组的名称?

使用以下代码,我可以检索该组中的所有用户。

public void getUserList() {

    String groupName="Friends"
    final ParseUser currentUser = ParseUser.getCurrentUser();
    if (currentUser != null) {

        ParseRelation relation = currentUser.getRelation(groupName);
        ParseQuery query = relation.getQuery();

        try {
            Log.e("Size ", "Size " + query.count());
        } catch (ParseException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        // query.whereEqualTo("username", null);
        query.findInBackground(new FindCallback<ParseObject>() {
            @Override
            public void done(List<ParseObject> objects, ParseException arg1) {
                // TODO Auto-generated method stub
                try {
                    for (int i = 0; i < objects.size(); i++) {
                        ParseObject r = objects.get(i);
                        String name = r.getString("username").toString();
                        Log.e("user name ", "===>" + name);

                    }
                } catch (Exception e) {
                    Toast.makeText(getApplicationContext(),
                            "Error : " + e.toString(), 1).show();
                }
            }
        });
    }
}

enter image description here

在上面的屏幕截图中,我使用一个查询需要所有名称,如Friends,MYGroup和xyz。 请帮帮我。

1 个答案:

答案 0 :(得分:1)

要获取所有组,您需要查询Group类(或您调用它的任何内容):

ParseQuery<ParseObject> query = ParseQuery.getQuery("Group");
query.findInBackground(new FindCallback<ParseObject>() {
    public void done(List<ParseObject> groupList, ParseException e) {
        if (e == null) {
            for (ParseObject group : groupList) {
                Log.d("group", "Group name: " + group.get("name");
            }
        } else {
            Log.d("score", "Error: " + e.getMessage());
        }
    }
});