目前我正在使用Parse.com来创建多个ParseUsers.这非常有效,每个用户都可以单独登录.但是从这里我想扩展我的应用程序以允许用户创建用户组,因此只有这些用户之间相关和共享的数据.这意味着当用户登录时,他们可以看到他们所属的组的列表,并且可以从那里仅仅向该组的用户共享数据.什么是解决这个问题的最佳方法,是否有人为了理解这个概念而有任何我可以遵循的示例或教程?
我考虑过创建一个Group类,然后将这个用户的ID存储在一个数组中,然后允许每个User存储他们当前成员的Group ID数组.我只是不确定如何解决这个问题.
提前致谢!
解决方法
我最终做了如下所示:
ParseQuery<ParseRole> query = ParseRole.getQuery(); Intent intent = getActivity().getIntent(); String groupId = intent.getStringExtra("groupId"); query.whereEqualTo("objectId",groupId); groupUsers = new ArrayList<String>(); query.findInBackground(new FindCallback<ParseRole>() { @Override public void done(List<ParseRole> objects,ParseException e) { if(e == null) { for(ParseRole role : objects) { ParseRelation<ParseUser> usersRelation = role.getRelation("users"); ParseQuery<ParseUser> usersQuery = usersRelation.getQuery(); usersQuery.findInBackground(new FindCallback<ParseUser>() { @Override public void done(List<ParseUser> objects,ParseException e) { for(ParseUser user : objects) { groupUsers.add(user.getUsername()); } } }); } } else { Toast.makeText(getActivity(),"ERROR",Toast.LENGTH_SHORT).show(); } } });
我从Intent传递了组ID,该ID发送给我正在检查的Fragment,然后使用我在Parse数据库中使用特定组ID查询返回的列表填充ListView.我希望这可以帮助其他与我有同样问题的人.祝好运!