Android setReadAccess for Parse ADMIN错误

时间:2015-04-29 12:57:55

标签: android database parse-platform

我使用Parse数据库。我希望能够访问简单用户和管理员用户。这将是每个用户只能看到他/她自己的数据,但管理员用户可以看到所有用户的数据。

我创建了一个ParseUser,如果当前用户与它相同,则应该知道它是admin用户。 我收到以下错误:
java.lang.IllegalArgumentException:对于具有null id的用户,不能setReadAccess

我认为错误在于if函数(永远不会变为真)和这个:acl.setReadAccess(ADMIN,true);

有人可以提出建议吗?

ParseUser ADMIN = new ParseUser();
ADMIN.setUsername("ADMIN3");
ADMIN.setPassword("a");

// Create a post.
   AnywallPost post = new AnywallPost();

   // Set the location to the current user's location
   post.setLocation(geoPoint);
   post.setText(text);
   post.setUser(ParseUser.getCurrentUser());

   ParseACL acl = new ParseACL();


   // Give read accesses
  if (ParseUser.getCurrentUser() == ADMIN) {
      acl.setReadAccess(ParseUser.getCurrentUser(), true);
  }
  else
  {
      acl.setReadAccess(ParseUser.getCurrentUser(),true);
      acl.setReadAccess(ADMIN,true);
  }
   post.setACL(acl);



   // Save the post
   post.saveInBackground(new SaveCallback() {
       @Override
       public void done(ParseException e) {
           dialog.dismiss();
           finish();
       }
   });

0 个答案:

没有答案