移动新势能“一键登录”如何在iOS平台上实现?


在一键登录出现之前,市场上最常见的APP注册登录方式主要有账号密码、短信验证及第三方登录。这几种方式看似常见且便捷,实则存在许多安全隐患,用户体验也相对较差。首先,短信验证码到达率低、用户操作繁琐且等待时间较长,如果遇到bug,APP就会面临被卸载的惨境。再者,短信木马、伪基站等问题都使得验证码变得越发不安全,极大降低用户的使用体验。

而“一键登录”可以让用户使用本机号码一键登录/注册 APP,手机号码即用户账号,无需使用密码和短信验证,运营商网关直接校验手机本机号,轻松解决上述问题。那么,这么好用的功能怎么才能实现呢?今天就给大家介绍极光开发者服务产品“极光认证”。

极光认证整合了三大运营商的一键登录功能,接入极光认证一个 SDK 就可以实现三网用户一键登录APP,并已覆盖99.9%以上的国内用户。iOS端的SDK集成操作步骤如下:

1. 注册极光开发者账号并做开发者认证,如果之前有用过极光推送这步可以直接省去。如果之前没用极光的其他 SDK 就要先注册账号。传送门:www.jiguang.cn/identify。

2. 选择要开通极光认证的应用程序,在应用设置中点击左侧的 极光认证 按钮。在应用介绍中填写 应用分类  应用简介 。iOS应用需要填写 Bundle ID ,填写完成后点击 提交审核 

3. 若需要使用一键登录功能,待步骤2完成后,请在 一键登录设置 中选择要开通一键登录的平台,并填写RSA加密公钥,点击 提交审核 按钮;

4. 提交之后需要等待审核,审核还是挺快的,大概半个小时就通过了。首次申请,我们还会赠送 10000 多条的测试条数。审核通过后下载SDK参考以下步骤集成JVerification SDK。传送门:https://docs.jiguang.cn//jverification/resources/。

手动集成步骤

1. 请在自己的工程中导入下载下来SDK包当中的libs文件夹。

2. 为工程添加相应的Frameworks,需要为项目添加的Frameworks如下:

  • AdSupport.framework(获取 IDFA 需要;如果不使用 IDFA,请不要添加)

  • CoreLocation.framework

  • CFNetwork.framework

  • CoreFoundation.framework

  • libresolv.tbd

  • libz.tbd

  • libc++.1.tbd

  • CoreTelephony.framework

  • SystemConfiguration.framework

  • Security.framework

  • CoreGraphics.framework

  • libsqlite3.tbd

  • MobileCoreServices.framework

  • 位置:General 》linked Frameworks and libraries

3. 配置-ObjC

设置工程TARGETS -> Build Settings -> Other Links Flags, 设置 -ObjC。

4. 配置支持Http传输

右键打开工程plist文件,加入以下代码

    <key>NSAppTransportSecurity</key>

    <dict>

        <key>NSAllowsArbitraryLoads</key>

        <true/>

    </dict>

5.请将演示Demo中JVerificationResource.bundle拖到自己的工程目录下。

参考步骤1

6. 在项目中添加一键登录功能

  • 在General》identity 下配置bundleID(参考下图)

  • 请将以下代码添加到引用JVERIFICATIONService.h头文件的的相关类中(参考下图)。

    //引入JVERIFICATIONService.h头文件    #import "JVERIFICATIONService.h"    // 如果需要使用 idfa 功能所需要引入的头文件(可选)#import <AdSupport/AdSupport.h>
  • 接入的JVerification SDK的应用,必须先初始化JVERIFICATIONService,否则将会无法正常使用,请将以下代码添加到合适的位置(参考下图)

   //如需使用 IDFA 功能请添加此代码并在初始化配置类中设置 advertisingId    NSString *idfaStr = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];    JVAuthConfig *config = [[JVAuthConfig alloc] init];    config.appKey = @"your appkey";    config.advertisingId = idfaStr;    [JVERIFICATIONService setupWithConfig:config];

  • 按照集成文档添加一键登录等代码:https://docs.jiguang.cn/jverification/client/ios_api/  下图仅供参考。

  • 运行工程

日志打印注册结果与登录结果,返回相应的UID与registrationID 即表示集成成功(参考以下日志)

2019-08-09 11:10:32.727188+0800   login[1240:285949]  | JIGUANG | I -   [JIGUANGService]

---------------------------   JVerification Log ----------------------------

--------------------JVerification SDK   Version:2.4.0--build:102------------

--------------------JCore Lib   Version:2.1.1--build:78-----------------

-----------------AppKey:79d4c5ad142bba180ac12344-----------------------

-----------------------------------------------------------------------

2019-08-09 11:10:32.823700+0800   login[1240:285952]  | JIGUANG | I -   [JIGUANGClientController] Action - setup

2019-08-09 11:10:32.847702+0800   login[1240:285949]  | JIGUANG | I -   [JIGUANGConnectManager] Action - closeConection

2019-08-09 11:10:32.965061+0800 login[1240:285949]  | JIGUANG | I - [JIGUANGRegister]

----- register info -----

Appkey: 79d4c5ad142bba180ac18d2b

token: 

 advertisingIdentifier:   E409D462-ED53-4901-8CB1-73807F60AA11

2019-08-09 11:10:34.058410+0800   login[1240:285949]  | JIGUANG | I -   [JIGUANGTcpEventController]

----- register result -----

uid: 29023815771

registrationID:13165ffa4e7673d8bd8

2019-08-09 11:10:34.066755+0800   login[1240:285928] 初始化结果 result:{

      code = 8000;

      content = "init success";

}

2019-08-09 11:10:34.107601+0800   login[1240:285949]  | JIGUANG | I -   [JIGUANGTcpEventController]

----- login result -----

uid:29023815771

registrationID:13165ffa4e7673d8bd8

2019-08-09 11:10:34.132452+0800   login[1240:285949]  | JIGUANG | I -   [JIGUANGIDFAReport] upload advertisingIdentifier  E409D462-ED53-4901-8CB1-73807F60AA11

2019-08-09 11:10:35.080778+0800   login[1240:285950]  | JIGUANG | I -   [JIGUANGTcpEventController] upload advertisingIdentifier  success

2019-08-09 11:10:36.113310+0800   login[1240:285950]  | JIGUANG | I -   [JIGUANGConnectManager] Action - disConnect

2019-08-09 11:10:36.113575+0800   login[1240:285950]  | JIGUANG | I -   [JIGUANGConnectManager] Action - closeConection

  • 集成成功后可点击以上设置好的按钮对应的接口(获取tonken、请求授权、预取号、登录)来体验一键登录。

  • 如果您不喜欢默认的登录页面,极光认证SDK中提供了自定义页面的接口,可以按照自己设计稿来修改UI,文档参考:
    https://docs.jiguang.cn/jverification/client/android_api/#sdkui

以上就是iOS一键登录SDK的集成步骤,实操下来真的很方便!想要提升用户体验和产品安全度的开发者不妨可以参考使用。

关于极光

极光(Aurora Mobile,纳斯达克股票代码:JG)成立于2011年,是中国领先的开发者服务提供商。极光专注于为移动应用开发者提供稳定高效的消息推送、即时通讯、统计分析、社会化组件、短信、一键认证、深度链接、物联网等开发者服务。截止到2019年6月份,极光已经为超过40万移动开发者和128.9万款移动应用提供服务,其开发工具包(SDK)安装量累计266亿,月度独立活跃设备11.3亿部。同时,极光持续赋能开发者和传统行业客户,推出精准营销(极光效果通)、金融风控、市场洞察、商业地理服务产品,致力于为社会和各行各业提高运营效率,优化决策制定。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值