我正在尝试在从Facebook SDK获取的用户中设置电子邮件。如果我用这样的字符串设置电子邮件:
user.setEmail("whatever@whwhwh.com");
user.saveInBackground();
它有效,没问题......它出现在Parse的数据浏览器......
如果我尝试做我需要做的事情(见下面的代码),那么它不起作用,我检查了字符串值,它没关系,这是所需的电子邮件....我试过了不同的事情..没有运气..请帮助,谢谢。
user.setEmail(user.getProperty("email").toString());
user.saveInBackground();
答案 0 :(得分:1)
确保所提供的电子邮件未被任何其他用户使用。这是因为电子邮件必须是 unique 。
调用saveInBackground
时,如果确实发生异常,它实际上不会抛出任何异常。因此,在您的情况下,如果电子邮件是重复的,则不会保存电子邮件,也不会抛出任何异常。
要使用saveInBackground
捕获例外,您可以使用SaveCallback。
user.saveInBackground(new SaveCallback() {
public void done(ParseException e) {
if (e == null) {
// No exception
} else {
// Exception occured
}
}
});
有关例外的列表,您可以参考ParseException。