Java 与iCloud相似的唯一google id
所以,几天来我一直在寻找解决方案,但运气不好,所以我想我会在这里发布。因此,在我的移动应用程序中,用户不会按照通常意义上的“注册”,而是他们的帐户将具有唯一的id 因此,问题在于知道哪个用户是哪个用户,并保持他们的数据不变,无论他们是否切换到新设备、是否从备份中恢复等 对于IOS,我通过使用iCloud的唯一标识符解决了这个问题。我通过api调用来获取他们的id,并检查我的后端,看看他们是否已经拥有一个帐户。(很明显,我不能解释为什么有人故意登录只是为了搞乱它。有些边缘案例不值得争论。)下面是用swift编写的对iCloud的api调用Java 与iCloud相似的唯一google id,java,android,ios,swift,cloudkit,Java,Android,Ios,Swift,Cloudkit,所以,几天来我一直在寻找解决方案,但运气不好,所以我想我会在这里发布。因此,在我的移动应用程序中,用户不会按照通常意义上的“注册”,而是他们的帐户将具有唯一的id 因此,问题在于知道哪个用户是哪个用户,并保持他们的数据不变,无论他们是否切换到新设备、是否从备份中恢复等 对于IOS,我通过使用iCloud的唯一标识符解决了这个问题。我通过api调用来获取他们的id,并检查我的后端,看看他们是否已经拥有一个帐户。(很明显,我不能解释为什么有人故意登录只是为了搞乱它。有些边缘案例不值得争论。)下面是用
CKContainer.defaultContainer().fetchUserRecordIDWithCompletionHandler({ (recordID, error) -> Void in
dispatch_async(dispatch_get_main_queue()) { () -> Void in
if error == nil
{
if recordID != nil
{
self.rid = recordID!.recordName
let json = ["user":self.rid]
networkController.newUser(json)
}
else
{
// Just a random string
self.rid = randomID()
let json = ["userID":self.rid]
networkController.newUser(json)
}
}
else
{
MBProgressHUD.hideHUDForView(self.view, animated: true)
let alert = UIAlertController(title: "Uh Oh", message: error!.localizedDescription, preferredStyle: .Alert)
let okayAction = UIAlertAction(title: "Okay", style: .Cancel, handler: nil)
alert.addAction(okayAction)
self.presentViewController(alert, animated: true, completion: nil)
}
}
})
这保证了当用户登录到他们的iCloud帐户时,会有一个唯一的CloudKit记录,因此在恢复备份或获取新设备时,无需创建新帐户
我的问题是,谷歌/安卓是否有类似的东西,不一定是他们的电子邮件地址或任何个人信息。因为安卓设备价格便宜,而且经常交换,我想找到一种方法来保持用户数据同步。非常感谢您的帮助或反馈。Andrew
我想你问题的答案在这里
在这里
总之,“UUID”是你问题的答案好的,我明白你的意思了。我现在唯一的问题是android uuid,如果用户获得新设备,我如何确定用户帐户已经存在?当应用程序首次启动时,我需要一些东西作为基础。在iCloud中,他们登录应用商店和其他服务是基于他们的帐户。UUID只有在他们从未换过新设备的情况下才会起作用;对不起,我不是机器人人;但是一个简单的家伙。你不能用谷歌硬盘做点什么吗?谷歌毕竟是安卓系统的所有者。我不确定,我只是进入安卓系统的开发阶段,我宁愿不保留用户的电子邮件。但看起来我可能不得不这么做。