使用Sign in with apple 插件,为Unity开发的游戏加入Apple ID登陆功能
注意事项:
- Apple ID登陆应用可以获取到用户苹果账号ID、用户全名、用户邮箱、用户身份token以及用户授权码(Notice:用户全名以及用户邮箱仅当用户第一次登陆应用时才会获取)
- 用户启动应用后,Apple ID快速登陆应该首先执行,如果用户之前授权过本应用,则弹出对话框让用户再次确认登陆来得到用户的user ID和凭证,如果没有得到凭证则快速登陆失败
- 当用户第一次使用sign in with apple登陆时,应用可获取到用户的apple id、用户全名、用户邮箱、用户身份标识,其中用户全名、用户邮箱仅在用户第一次授权登陆时才返回,将所需要的数据发送给游戏服务器进行苹果账号注册登陆,返回登陆结果获取游戏账户user_token,保存至本地进入正常游戏流程
- 用户关闭应用第二次打开应用时,如果游戏应用本地保存的有apple ID,首先读取本地保存的apple ID,根据本地存储的apple ID,对该apple ID的Credential status凭证状态进行检查,如果如果凭证仍在授权状态下,则该user ID凭证状态有效,直接进入游戏流程,如果是在需要重新唤醒或者未找到的状态下,则需要删除本地保存的apple ID,重新进行一次sign in with apple登陆
- 当用户卸载重装后启动应用时,应用首先检查本地是否储存有apple ID,本地没有储存apple ID时,尝试进行快速登陆,如果快速登陆成功获取到用户凭证,则保存用户ID到本地,向服务器获取该apple ID的user_token,进入游戏流程,如果成功收到一个用户凭证,则进入sign in with apple登陆流程
- 已经授权过的账户,再次使用完整的Sign in with apple时登陆时,无法获取到用户全名、用户邮箱之类的,尝试获取时会报空