我当前正在尝试登录以创建到领域的登录名,但是由于我的logInAsync没有输入onSuccess或onError方法,所以无法访问SyncUser。 onSuccess方法返回一个SyncUser,但这没有发生。我的代码是
String authURL = "https://my-realm.us1a.cloud.realm.io";
String email = "testemail@gmail.com";
String password = "testPassword";
SyncCredentials credentials = SyncCredentials.usernamePassword(email, password, true);
RealmAsyncTask task = SyncUser.logInAsync(credentials, authURL, new SyncUser.Callback<SyncUser>() {
@Override
public void onSuccess(SyncUser result) {
user = result;
}
@Override
public void onError(ObjectServerError error) {
System.out.println("failed");
}
});
String url = "realms://unbranded-metal-bacon.us1a.cloud.realm.io/~/travelin";
config = user.createConfiguration(url).build();
我在上面声明了一个私有的SyncUser用户。在最后一行,由于用户为空,因此我得到了空对象引用。我没有输入onSuccess或onError的原因是什么?
答案 0 :(得分:0)
验证URL错误,必须为
String authURL = "https://my-realm.us1a.cloud.realm.io/auth";
此外,SyncUser.logInAsync()在后台运行,因此此行必须位于onSuccess()
内,否则User将为null
config = user.createConfiguration(url).build();