扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
这个没什么框架吧,主要是把你填写的账号和密码发送给你的后台服务器。
专注于为中小企业提供成都网站制作、做网站服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业港南免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上1000家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
学而时习之,不亦乐乎,大家好,我是张杰。
上半年苹果登录可谓争论不休,至今也有不少疑问。今天亲测给大家讲讲。
网上两个观点:
1、只要项目里面用到了三方登录就一定要加上苹果登录。
2、项目里面要是有自己的登录方式(比如手机号登录)加上其他三方登录可以不用苹果登录。
下面是苹果官网给的解释:
符合以下条件的 App,可以不接入:
使用自建账户和登录系统;
要求用户使用现有的教育或企业账户登录的教育、企业或商业类应用;
使用政府或行业支持的公民身份识别系统或电子 ID 来验证用户;
应用特定于第三方服务,用户需要使用邮箱、社交媒体或其它第三方账户才能访问其内容的应用。
直通车:
反正理解的不是很透彻,结合市面上大部分APP,我得出一下结论:
下面是我提交APP的界面:
然后苹果审核被拒信息:
然后就进行了改进:
下面讲具体怎么做还有需要注意的点。
}
至此,你已经可以拉起苹果登录了,后面就是你自己去做你的业务了。
参考:
如果有错误或者还有其他问题,可以联系我: zhangjieiossky@163.com ,谢谢
我们现在的做法的是
使用账号密码登录以后,返回一个登录凭证acckessToken,一个accessToken唯一对应一个账号,将这个acckessToken保存在本地
后续需要登录的地方比如需要取用户信息,直接传这个这个登录凭证acckessToken给后台就可以
acckessToken有一定期限,比如7天,过期了,凭借旧的acckessToken调用刷新acckessToken接口,获取新的凭证或者直接续时间
对发出的请求进行加密,防止别人搞破坏
一般登录模块会进行封装,基本不可能让开发人员有机会获取到账号和密码。
官方文档
API比较简单,在IOS 8 以上的app 包中,添加Libraries:LocalAuthentication Framework,有以下两个方法
*在设备(用户)绑定之后,并且当前正处于登录状态,也可以将本设备取消绑定,流程基本与绑定流程雷同,不再重复。
TouchID API 非常简单,仅仅对本设备的TouchID进行验证,但如果需要在app集成相应的 “设备登录/验证”功能或其他TouchID 的应用,则需自行设计关联和绑定流程(例如在本app中使用的关联:设备Token、生成设备账号/密码、app包名/版本),绑定之后,才能使用TouchID 进行验证和应用。
IOS开发终端和服务器交互目前都是通过restful api的形式。
IOS终端列出需要的API接口,服务端实现这些接口,中间通过http协议通信来交互。
REST 指的是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是 RESTful。
Web 应用程序最重要的 REST 原则是,客户端和服务器之间的交互在请求之间是无状态的。从客户端到服务器的每个请求都必须包含理解请求所必需的信息。如果服务器在请求之间的任何时间点重启,客户端不会得到通知。此外,无状态请求可以由任何可用服务器回答,这十分适合云计算之类的环境。客户端可以缓存数据以改进性能。
在服务器端,应用程序状态和功能可以分为各种资源。资源是一个有趣的概念实体,它向客户端公开。资源的例子有:应用程序对象、数据库记录、算法等等。每个资源都使用 URI (Universal Resource Identifier) 得到一个唯一的地址。所有资源都共享统一的接口,以便在客户端和服务器之间传输状态。使用的是标准的 HTTP 方法,比如 GET、PUT、POST 和DELETE。Hypermedia 是应用程序状态的引擎,资源表示通过超链接互联。
闲话少说,直接上码
登陆developer账号,在app bundle ID的Capabilities里,打勾 Sign In with Apple .
打开Xcode 11.0 Beta或更新版本,在项目设置 - Signing Capabilities 里,开启 Sign in with Apple 选项。
实现分四大部分:
在上面 ASAuthorizationControllerDelegate 的用户通过验证的回调里,可以拿到 credential ,这里面有一些信息值得提下:
授权或者用户信息是有可能被改变的,我们能做到就是尽早的检测出这样的改变,并做以应对。
检测授权的状态需要记录在上面所得到的
在 AppleDelegate 里,把之前存的用户ID放到 ASAuthorizationAppleIDProvider 里验证即可,可以得到几种用户授权状态:
如果有错误欢迎指出,也欢迎各种讨论,谢????!
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流