您需要先登录才能拥有有效的SyncUser。
SyncUser user = SyncUser.logIn(SyncCredentials.usernamePassword(username, password, true), Constants.AUTH_URL);
SyncConfiguration config = user.createConfiguration(Constants.USER_REALM).build();
所以我想下面的方法是可行的:
SyncUser syncUser = SyncUser.current();
if (syncUser == null) {
SyncCredentials myCredentials = SyncCredentials.usernamePassword("userid", "pass", false);
syncUser = SyncUser.logIn(myCredentials, AUTH_URL);
}
SyncConfiguration configuration = syncUser.createConfiguration(REALM_BASE_URL + "/~/myDB").build();
注意,这默认为使用
partial synchronization
,因此如果要保留以前的行为,可能必须调用
.fullSynchronization().build()
.