iOS 开发苹果登录授权 Sign In with Apple

网上关于苹果登录授权的文章已经已有很多,但大多数介绍有些繁琐,实际操作起来很简单。核心要获取到三个参数:team_id, client_id, key_id,再通过 uapp 命令生成 JWT Token 给后端就完事了。

苹果审核有一条规定,如果出现比如微信、QQ、Facebook等第三方账号登录时,必须要加上苹果登录,否则无法通过审核。苹果登录只针对 iOS 13及以上版本有效。

1、获取 team_id 和 client_id

进入 Identifiers 页:developer.apple.com/acc

点 Identifiers+ ,注意这里输入的 com.code0xff.uapp.login 就是 client_id,换成你自己的。

下面的服务列表选中 Sign in with Apple, 点 Edit ,输入你自己服务器端的 Callback URL:

至此,我们已成功获得到两个参数 team_id 和 client_id。

2、获取 key.txt 和 key_id

进入 Keys 页:developer.apple.com/acc

点 Keys+ 创建 Key,依次操作:输入 Key Name,选中 Sign in with Apple,Configure。


Configure 页面,选中在哪个 App 中使用:


右上角点 Download,下载后文件改名为 key.txt,放入工程的 jwt 目录下:

jwt
├── config.json
└── key.txt

至此,我们已成功获得 key.txt 和 key_id。

3、通过 uapp 获得 JWT Token

JWT Token 是给服务端的,如果还没有安装 uapp,可以通过 npm 安装:

npm i -g uapp

做完上面 jwt 目录下已经有了 key.txt,下面创建 config.json 并放入上面获得的 team_id, client_id, key_id。

jwt/config.json 内容如下:

{
    "team_id": "3DSM494K6L",
    "client_id": "com.code0xff.uapp.login",
    "key_id": "3C7FMSZC8Z"
}

然后执行:

uapp info 

就可以看到 JWT Token 了,发给后端使用既可。

编辑于 2023-10-23 15:53・IP 属地辽宁