秒验是个啥???是不是发验证码的?他们有这个业务,但是今天我们只讨论方便登录的“手机号一键登录”功能,

你得有个秒验的账号,注册完账号后填入App信息,注意:中间有审核时间,大概隔天收到审核结果,这个账号是为了收费的,不要说你穷,你要说我有钱能接秒验hahahahah
这一切都搞完了之后就是接入和使用,开用:
1.秒验接入文档
2.按照上面的文档直接接入,接完了之后开始代码编写,在AppDelegate中添加以下方法,

打Release包的时候记得设置为false,调试状态只在调试的时候使用
下面的代码是预取号过程,通过error值可以用来判断当前设备是否支持秒验的使用,即是否支持获取手机号码等一系列操作
SecVerify.preLogin {(resultDic, error) in
print("---->预取号 resultDic:\(resultDic) error:\(error)")
if error == nil {
//一切正常,支持使用
}else {
//当前设备对手机号的获取有误,不支持使用
}
}
如设备无SIM卡,则error会显示为没有SIM卡的相关信息(此处请不要用虚拟机测试,虚拟机不可用),如一切正常则可执行下一步逻辑。
确定预取号error为nil之后跳转一键登录场景,
注意:
正常情况下我们的一个场景一般都是自己编写UI然后添加数据实现各样的逻辑,但是,秒验的一键登录场景不一样,它是已确定好的场景,内部部件可通过相关属性修改,但是总体的东西我们是改不了的,简单说就是框架它有,里面的细节你来改。有意思的是它的展示方式,通常我们使用弹框、push这两种方式,如有下载demo,可参照图片中的文件修改


completion中的结果resultDic是token、operatorToken、operatorType,这三个值由后台逻辑处理,同时App端其实也能够通过下图中的方法计算出手机号码。


以上两张图是步骤中比较重要的方法,finishLoginVC是可以根据业务需求调整放置位置的,具体代码我不上了,OC和Swift使用方式都是一样的,唯一要的就是调试中的耐心。
网友评论