iOS 苹果授权登录(Sign in with Apple)/Apple登录/苹果登录集成教程

news/2024/5/23 12:18:44/

链接

HBuilderX 自 2.4.7+ 版本开始支持 Sign in with Apple (苹果登录),苹果登录是 iOS13 新增加的功能,当你的应用使用了第三方登录比如微信登录,同时也需要集成苹果登录,否则提交AppStore审核会被拒绝。

根据苹果审核指南要求,如果 app 使用第三方或社交登录服务 (例如,Facebook 登录、Google 登录、通过 Twitter 登录、通过 LinkedIn 登录、通过 Amazon 登录或微信登录) 来对其进行设置或验证这个 app 的用户主帐户,则该 app 必须同时提供“通过 Apple 登录”作为同等选项。详情参考:App Store 审核指南 - 通过 Apple 登录

使用苹果登录的教程

使用苹果登录首先需要在苹果开发者后台开启 App 的 Sign In with Apple 服务

注:只有发布Appstore的应用才能使用苹果登录。企业版开发者账号不支持 Sign In with Apple (企业版开发者账号指的是用于企业内部分发App,不能用于发布 App Store 的账号,也就是价格为 299$ 的账号)

1.登录到苹果开发者后台 编辑对应的 Identifier 勾选 Sign In with Apple 服务并保存

 

2.勾选或取消服务,会导致之前的 profile 描述文件失效,不需要新建,只要点击 Edit 重新编辑对应的 profile文件,然后保存下载使用新的profile文件即可

 

在 HBuilderX 编辑项目的 manifest.json ,在 App SDK配置中找到苹果登录,并勾选。

 

 

测试苹果登录服务,需要提交云打包或提交自定义基座打包,只有添加了苹果登录服务提交打包才会将苹果登录模块打进安装包,否则调不到相关方法

登录按钮样式

苹果对登录按钮样式有要求,请按照苹果要求统一设置登录按钮的样式,否则审核可能会被拒绝

需要注意的是:

  • 按钮必须在显著的位置(避免滑动屏幕才能看到)
  • 登录按钮有三种外观:白色,带有黑色轮廓线的白色和黑色,其他设计可能会影响审核;
  • 按钮圆角范围及按钮最小尺寸也有要求;
  • 具体规则请参考苹果 官方文档

下面是原生端默认的几种按钮样式供大家参考(width:130pt, height:30pt, corner radius: 6pt)

 

 

示例代码 (详细 api 请查阅 plus.oauth 文档)

注:因为是 iOS13+ 系统才支持苹果登录,所以建议在App的界面入口判断下,只有 iOS13 才显示Apple登录的选项

uni-app示例

复制代码uni.login({  provider: 'apple',  success: function (loginRes) {  // 登录成功  uni.getUserInfo({  provider: 'apple',  success() {  // 获取用户信息成功  }  })  },  fail: function (err) {  // 登录失败  }  
});  

5+App示例 (可以在 uniapp 中直接调用5+API)

注:因为是 iOS13+ 系统才支持苹果登录,所以在 iOS13 以下设备调用 plus.oauth.getServices 不会返回苹果登录对应的 service 对象

复制代码var appleOauth = null;  
plus.oauth.getServices(function(services) {  for (var i in services) {  var service = services[i];  // 获取苹果授权登录对象,苹果授权登录id 为 'apple' iOS13以下系统,不会返回苹果登录对应的 service    if (service.id == 'apple') {  appleOauth = service;  break;  }  }  appleOauth.login( function(oauth){  // 授权成功,苹果授权返回的信息在 oauth.target.appleInfo 中    }, function(err) {  // 授权失败 error  }, {  // 默认只会请求用户名字信息,如需请求用户邮箱信息,需要设置 scope: 'email'    scope: 'email'  })  
}, function(err) {  // 获取 services 失败  
})

5+ api 返回参数说明

注意:这里是 5+ api 返回的数据,uni 接口对 5+api 做了封装,以实际返回结果为准

appleInfo

属性类型说明
userString苹果用户唯一标识符
stateString验证信息状态
emailString用户共享的可选电子邮件
fullNameObject用户共享的可选全名
authorizationCodeString验证数据
identityTokenStringWeb令牌(JWT)
realUserStatusNumber标识用户是否为真实的人 0:当前平台不支持,忽略该值;1:无法确认;2:用户真实性非常高
scopeString返回信息作用域

fullName

属性类型说明
namePrefixString名字前缀,头衔、敬称
givenNameString名字
middleNameString中间名
familyNameString
nameSuffixString名字后缀,学位、荣誉
nickNameString昵称

授权失败 code 说明

code说明
1000未知错误
1001取消授权
1002返回值无效
1003请求未处理
1004授权失败

最后提交云打包或自定义基座打包进行功能测试

注意事项

  1. 只有首次弹出登录授权框时才会有用户名及email的项(email需要配置 scope: 'email' ),并且用户可以删除或编辑用户名或隐藏用户邮箱,如果用户删除了用户名授权成功后fullname字段也会为空;
  2. 授权成功后再次调用登录接口会先校验上次授权是否依然有效,如有效,直接回调成功并返回上次授权成功时的数据,注意,此校验不会校验identityToken是否过期,需要用户自行处理;如果想每次都弹出授权框获取新的identityToken等信息,需要先调用'logout()',然后在调用登录接口就会弹出授权框,注意这时授权框内不会在出现用户名及邮箱,登录成功后这两个字段会为空,需要拿到 authorizationCode,identityToken 后传给服务器,然后和苹果服务器验证可获取用户名称等信息,具体请自行查阅文档;如果想在授权框中再次出现用户名或邮箱。需要在 系统设置->AppleID->密码与安全性->使用Apple ID 的 App 里面取消授权,然后再调用登录接口;

http://www.ppmy.cn/news/338864.html

相关文章

Apple苹果公司组织架构

Apple苹果公司组织架构

Apple苹果公司组织架构 这种模式,自乔布斯回到苹果时,开始实施,一直保留到现在。 今天,苹果大学校长兼副总裁 Joel Podolny 在《哈佛商业评论》上发表了一篇题为《How Apple is Organized for Innovation》的文章,深…
阅读更多...
iPhone历代产品,从3GS到7Plus详尽参数

iPhone历代产品,从3GS到7Plus详尽参数

iPhone 7 Plus iPhone 7 iPhone SE iPhone 6s Plus iPhone 6s iPhone 6 Plus iPhone 6 iPhone 5S iPhone 5C iPhone 5 iPhone 4S iPhone 4 iPhone 3GS 图片展示 机身高度 158.2 mm 138.3 mm 123.8 mm 158.2 mm 138.3 mm 158.1 mm 138…
阅读更多...
苹果8参数_iPhone11 iPhone11Pro哪里买最便宜靠谱划算 2020双十一苹果手机购机攻略...

苹果8参数_iPhone11 iPhone11Pro哪里买最便宜靠谱划算 2020双十一苹果手机购机攻略...

主要配置参数。 iPhone11系列机型配置参数 正品购买渠道。 哪里在保证正品的前提下,又能享受到这么划算的价格呢? Apple产品京东自营旗舰店: 正品保证价格便宜收货快(当日或次日达)还能享受京东和苹果官方的双重售后保…
阅读更多...
设置苹果机参数

设置苹果机参数

其中 【newCommandTimeout】是 查找某个页面的元素时,定位可能会时间超长。默认的命令间隔时间是60s,如果在60s内没有找到,就会自动退出 自己成功启动过的头部 # -*- coding: utf-8 -*- from time import sleepfrom appium import webdriverfrom seleniu…
阅读更多...
樱桃键盘 Cherry 键盘 windows键 无效 没反应

樱桃键盘 Cherry 键盘 windows键 无效 没反应

FUNF9解锁,这是为了防止误触把几个键给锁定了。
阅读更多...
CHERRY樱桃机械键盘按键

CHERRY樱桃机械键盘按键

FNF1:静音 FNF2:音量减少 FNF3:音量增大 FNF4:灯光开关 FNF5:灯光亮度调节 FNF6:灯光亮度调节 FNF7:灯光速度调节 FNF8:灯光速度调节 FNF8:锁定键盘中的窗口键 FNF10&…
阅读更多...
84键键盘没有insert键

84键键盘没有insert键

84键键盘,insert和delete使用了同一键位,使用 fndel 可打出insert
阅读更多...
ikbcF108键盘重置

ikbcF108键盘重置

Fnr, 按住5秒,期间键盘指示灯会闪,复位成功
阅读更多...
计算机键盘复制键,键盘按键设置复制粘贴的方法

计算机键盘复制键,键盘按键设置复制粘贴的方法

熟练地掌握鼠标键盘进行复制粘贴是很有必要的。那怎么用键盘复制粘贴呢?下面是学习啦小编为大家介绍键盘复制粘贴的方法,欢迎大家阅读。 键盘复制粘贴的方法 1、针对某一段文字或其他字符的复制黏贴,直接选择需要黏贴的对象,按住CtrlC(复制的快捷键)&am…
阅读更多...
vue 调用虚拟键盘

vue 调用虚拟键盘

有时候在大型触屏设备(如双屏设备)中,往往就没有键盘去操作,而且在触屏input或者textarea的输入时候就无法去输入值,所以就需要去建立一个虚拟键盘去操作 vue-touch-keyboard 详细介绍及操作链接 *记录下
阅读更多...
华为手机输入键盘声音_华为键盘声音怎么设置

华为手机输入键盘声音_华为键盘声音怎么设置

现在用华为手机的用户越来越多,大家知道华为手机的键盘声音怎么设置吗?具体需要怎么样操作呢?很多用户其实并不是太了解这个操作方法,别着急,今天小编带着各位一起学习。 华为键盘声音怎么设置: 1、点击进入…
阅读更多...
宁芝普拉姆键盘说明书

宁芝普拉姆键盘说明书

welcome to my blog 当初买来键盘后连接了一次电脑, 忘了怎么连了… 把说明书拍下来以备不时之需 这款静电容键盘确实很好用, 推荐一下
阅读更多...
计算机键盘无法识别,键盘无法识别的解决妙招

计算机键盘无法识别,键盘无法识别的解决妙招

键盘在电脑中扮演着中重要的角色,是电脑族们每天都要敲打的办公工具。但是不少朋友在使用键盘的时候,都有遇到过电脑键盘无法识别的情况,导致电脑键盘不能正常使用。那么,键盘无法识别要怎么办?今天U大侠小编就和大家说…
阅读更多...
键盘跑马灯

键盘跑马灯

新建记事本,输入以下代码: Set wshShellwscript.CreateObject("WScript.Shell") do wscript.sleep 100 wshShell.sendkeys "{CAPSLOCK}" wshShell.sendkeys "{NUMLock}" wshShell.sendkeys "{SCROLLLock}" loo…
阅读更多...
Qt 虚拟键盘使用

Qt 虚拟键盘使用

Qt 虚拟键盘使用 ​ Qt 在5.7 以后增加了虚拟键盘,我们在某些对样式没有要求的场合,可以快速使用Qt官方的虚拟键盘。在使用过程中,主要遇到两个问题,第一个问题就是在全屏状态下,键盘无法弹出显示,但是已经…
阅读更多...
键盘code码大全

键盘code码大全

键盘code码速查表 键盘 Key Code对照表 字母和数字键的键码值(keyCode)按键键码按键键码按键键码按键键码A65J74S83149B66K75T84250C67L76U85351D68M77V86452E69N78W87553F70O79X88654G71P80Y89755H72Q81Z90856I73R82048957 数字键盘上的键的键码值(keyCode)功能键键码值(keyC…
阅读更多...
计算机无法检测到键盘,电脑检测不到键盘怎么办

计算机无法检测到键盘,电脑检测不到键盘怎么办

电脑检测不到键盘怎么办 电脑检测不到键盘怎么办?电脑检测不到硬盘是指电脑开机后,键盘无法使用。电脑检测不到键盘故障一般是由于键盘接触不良、键盘的连接线断了、键盘的保险丝烧了、键盘不小心被水打湿或主板键盘接口损坏引起的。 解决方法一 当电脑出…
阅读更多...
macbook禁用键盘_如何禁用Macbook Pro的内置键盘

macbook禁用键盘_如何禁用Macbook Pro的内置键盘

最近几个月我的机械键盘一直在吃灰,因为用回了自己2011款15寸古董MBP当工作机。机器内置键盘比13寸MBP的内置键盘宽一点,导致像原来一样把机械键盘放在上面的时候会压到一些按键。 搜了一些可以把内置键盘禁用掉的办法,例如 方法1. 使用系统的“鼠标键”功能 在系统设置里设…
阅读更多...
Java Swing 键盘事件监听

Java Swing 键盘事件监听

Java Swing 键盘事件监听 开发工具与关键技术:java、 elipse2019、jdk1.8 作者:Amewin 撰写时间:2019年9月16日键盘事件的事件源一般丐组件相关,当一个组件处于激活状态时,按下、释放或敲击键盘上的某个键时就会发生…
阅读更多...
Windows修改键盘映射

Windows修改键盘映射

问题:笔记本电脑的键盘布局如下,经常使用Home和End的我很不习惯没有End键,于是打算通过修改不常用的按钮 解决: 方法一:通过Sharpkeys软件修改 1.下载Sharpkeys(http://www.randyrants.com)&a…
阅读更多...
最新文章

聚圣源2020年什么时候报名?农业发展有限公司起名字中国有多少党员诸葛亮起名字排骨起名三十而已在线观看免费女孩起名 张楠孟姓女孩起名福昕pdf编辑器2019张姓起名字大全我不是药神下载红星闪闪歌曲带宝起名字闹闹女巫店一周运势员工安全培训声名鹊起佘姓起名翡翠店铺起名大全大全管理软件起名谷姓少女起名字蛛丝马迹电影美容养生公司起名双胞胎宝宝起名大全免费李白的诗起名字姓李女宝宝起名深圳福田起名公司湖北省财政厅地址我的师父是王语嫣平安起名姓史的起名女孩淀粉肠小王子日销售额涨超10倍罗斯否认插足凯特王妃婚姻让美丽中国“从细节出发”清明节放假3天调休1天男孩疑遭霸凌 家长讨说法被踢出群国产伟哥去年销售近13亿网友建议重庆地铁不准乘客携带菜筐雅江山火三名扑火人员牺牲系谣言代拍被何赛飞拿着魔杖追着打月嫂回应掌掴婴儿是在赶虫子山西高速一大巴发生事故 已致13死高中生被打伤下体休学 邯郸通报李梦为奥运任务婉拒WNBA邀请19岁小伙救下5人后溺亡 多方发声王树国3次鞠躬告别西交大师生单亲妈妈陷入热恋 14岁儿子报警315晚会后胖东来又人满为患了倪萍分享减重40斤方法王楚钦登顶三项第一今日春分两大学生合买彩票中奖一人不认账张家界的山上“长”满了韩国人?周杰伦一审败诉网易房客欠租失踪 房东直发愁男子持台球杆殴打2名女店员被抓男子被猫抓伤后确诊“猫抓病”“重生之我在北大当嫡校长”槽头肉企业被曝光前生意红火男孩8年未见母亲被告知被遗忘恒大被罚41.75亿到底怎么缴网友洛杉矶偶遇贾玲杨倩无缘巴黎奥运张立群任西安交通大学校长黑马情侣提车了西双版纳热带植物园回应蜉蝣大爆发妈妈回应孩子在校撞护栏坠楼考生莫言也上北大硕士复试名单了韩国首次吊销离岗医生执照奥巴马现身唐宁街 黑色着装引猜测沈阳一轿车冲入人行道致3死2伤阿根廷将发行1万与2万面值的纸币外国人感慨凌晨的中国很安全男子被流浪猫绊倒 投喂者赔24万手机成瘾是影响睡眠质量重要因素春分“立蛋”成功率更高?胖东来员工每周单休无小长假“开封王婆”爆火:促成四五十对专家建议不必谈骨泥色变浙江一高校内汽车冲撞行人 多人受伤许家印被限制高消费

聚圣源 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化