【发布时间】:2018-06-02 15:51:11
【问题描述】:
您好,我似乎无法使领域与领域对象服务器同步,我正在使用 xamarin,它的本地化效果很好,我似乎无法同步到云,甚至架构也无法同步
我的代码是:
var credentials = Credentials.UsernamePassword(usernameField.Text.ToLower(), passField.Text, createUser: true);
var authURL = new System.Uri("https://game-object.us1.cloud.realm.io/");
var user = await User.LoginAsync(credentials, authURL);
var serverURL = new System.Uri("realm://game-object.us1.cloud.realm.io/~/default");
var configuration = new SyncConfiguration(user, serverURL);
var permission= await user.GetGrantedPermissionsAsync(Recipient.CurrentUser,millisecondTimeout:2111);
var realm = Realm.GetInstance(configuration);
bool m;
if (realm.Config == configuration)
m=true;
var realmSession= realm.GetSession();
var state = realmSession.State;
var permissionCondition = PermissionCondition.UserId(user.Identity);
/* await user.ApplyPermissionsAsync(permissionCondition, "realm://game-object.us1.cloud.realm.io/~/default", AccessLevel.Write);
permission = await user.GetGrantedPermissionsAsync(Recipient.CurrentUser, millisecondTimeout: 2111);
*/
var players = realm.All<Player>();
realm.Write(() =>
{
realm.Add(new Player { Health = 1, name = "apex" });
});
var count = players.Count();
【问题讨论】:
-
可能是您的同步会话过早关闭。考虑添加进度通知,这样您就可以确保在上传数据之前不关闭会话。见realm.io/docs/dotnet/latest/#progress-notifications。
-
不,我调试了我的会话状态并且它处于活动状态
-
之前没有仔细阅读。看来您正在混合
https和realm。尝试使用http+realm或https+realms。