2

在 android 中,我使用 Parse 和 back4app.com 作为后端,每当我在返回 Save Callback 中使用 myParseobject.saveInBackground() 时,我都会收到错误消息,ParseException : only ACLs can be stored in the ACL key如果有人对此有任何想法,请分享。

4

2 回答 2

5

每当您使用 saveInBackground() 方法保存 ParseObject 时,都需要执行 YourParseObject.setAcl(your_Acl_Object_here); 您可以从下面找到工作代码,

对于公共访问,您可以写为,

ParseUser currentUser = ParseUser.getCurrentUser();
ParseACL acl = new ParseACL(currentUser);
acl.setPublicReadAccess(true);
YourParseObject.setACL(acl);

如果您只想用于 CurrentUser 访问,您可以写为,

ParseUser currentUser = ParseUser.getCurrentUser();
ParseACL acl = new ParseACL();
acl.setReadAccess(currentUser,true);
acl.setWriteAccess(currentUser,true);
YourParseObject.setACL(acl);
于 2017-03-23T11:00:15.623 回答
2

为避免此错误,我在 currentUser 登录后为其设置了 ACL。令人惊讶的是,它确实有帮助,并且在保存对象时我没有在该会话中看到任何错误。

// default ACLs for User object
ParseACL parseACL = new ParseACL(ParseUser.getCurrentUser());
parseACL.setPublicReadAccess(true);

ParseUser.getCurrentUser().setACL(parseACL);
于 2017-04-01T21:16:15.817 回答