RuntimeException:只有ACL可以存储在android中的ACL密钥中

时间:2017-03-16 10:19:13

标签: key store acl parseexception back4app

在android中我使用Parse和back4app.com作为我的后端,每当我在返回Save Callback中使用myParseobject.saveInBackground()时,我收到错误消息import scala.collection.mutable.ListBuffer var L= new ListBuffer[String]() L += "x3" 如果有人对此有所了解请份额。

2 个答案:

答案 0 :(得分: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);

答案 1 :(得分:2)

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

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

ParseUser.getCurrentUser().setACL(parseACL);