Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android ParseUser.setEmail()不适用于";某种字符串;?_Android_Facebook_Facebook Javascript Sdk_Parse Platform - Fatal编程技术网

Android ParseUser.setEmail()不适用于";某种字符串;?

Android ParseUser.setEmail()不适用于";某种字符串;?,android,facebook,facebook-javascript-sdk,parse-platform,Android,Facebook,Facebook Javascript Sdk,Parse Platform,我正在尝试在从Facebook SDK获得的用户中设置电子邮件。如果我使用以下字符串设置电子邮件: user.setEmail("whatever@whwhwh.com"); user.saveInBackground(); 它能用,没问题。。。它出现在Parse的数据浏览器中 如果我试着做我需要做的事情(见下面的代码),那么它就不起作用了,我检查了字符串值,没有问题,这是需要的电子邮件…我尝试了不同的事情。。不走运。。请帮忙,谢谢 user.setEmail(user.getPropert

我正在尝试在从Facebook SDK获得的用户中设置电子邮件。如果我使用以下字符串设置电子邮件:

user.setEmail("whatever@whwhwh.com"); 
user.saveInBackground();
它能用,没问题。。。它出现在Parse的数据浏览器中

如果我试着做我需要做的事情(见下面的代码),那么它就不起作用了,我检查了字符串值,没有问题,这是需要的电子邮件…我尝试了不同的事情。。不走运。。请帮忙,谢谢

user.setEmail(user.getProperty("email").toString());
user.saveInBackground();

确保所提供的电子邮件未被任何其他用户使用。这是因为电子邮件必须是

调用
saveInBackground
时,如果确实发生异常,它实际上不会引发任何异常。因此,在您的情况下,如果电子邮件是重复的,则不会保存该电子邮件,也不会引发异常

要捕获带有
saveInBackground
的异常,可以使用


有关例外情况的列表,请参考。

请定义“不起作用”。如果在堆栈跟踪后出现错误。
user.getProperty(“email”).toString()的输出是什么?
?输出是所需的电子邮件(通过日志检查)。不工作=它不会将电子邮件保存到parse用户,parse的数据浏览器中没有任何内容。如果我将其更改为字符串,如“xxxx@ccc.vom“它可以工作,并保存到解析的数据浏览器中。。。真是一片迷雾。。。。我尝试过的其他表达式:response.getGraphObject().getProperty(“email”).toString();(字符串)userg.asMap().get(“电子邮件”);您是否已检查该电子邮件是否未被其他用户使用?电子邮件必须是唯一的。请注意,如果发生异常,调用
saveInBackground
实际上不会引发任何异常。尝试使用
saveInBackground
添加
SaveCallback
,看看是否确实抛出了错误。哦,天哪!!谢谢,是的,我的普通用户有相同的电子邮件。。。。我会检查并回来告诉你结果…谢谢@singularhum,在尝试了一天之后,你做对了!
user.saveInBackground(new SaveCallback() {
  public void done(ParseException e) {
    if (e == null) {
      // No exception
    } else {
      // Exception occured
    }
  }
});