简介
「humbleadmin-SDK-iOS」是华瑞网研所开发的 「可信 ID」SDK
可提供 短信验证码登录 、 用户名和密码的注册和登录方法。
配置
使用此 SDK
时,项目需要满足以下要求。
- 项目设置 要求项目的
Deployment Target
在 7.0
以上。
- 项目设置 需要项目在自身的
.plist
文件中添加 App Transport Security Settings
并在该项中添加 Allow Arbitrary Loads
将其值设置为 YES
。
- 项目设置 需要项目在自身的
.plist
文件中 URL types
项内添加由 humbleadmin.io
获取到的 App Schema
。
项目结构
文件名 |
用途 |
doc |
本项目 API ,进入文件夹双击 index.html 查看。 |
humbleadmin-sdk-ios_使用说明 |
SDK 使用的快速入门使用说明。 |
humbleadmin-SDK-iOS.podspec |
支持 cocoapods 引用的项目文件。 |
LICENSE |
许可证书。 |
README.md |
说明文档。 |
HASDK |
SDK 存放位置,HASDK/Framework 下即为 SDK 。 |
SDK 自动引入方法
本 SDK 可以通过 CocoaPods 进行安装,只需要在 PHumbleAdminodfile 中添加一下代码:
注:
在使用 CocoaPods 安装时,除引入 humbleadmin-SDK-iOS
以外,还必须引入 humbleadmin-SDK-iOS/Connection/SMS
和 humbleadmin-SDK-iOS/Connection/Extend
其中之一,以便在项目中加入二进制的 .a
和 .bundle
文件。
使用说明
SDK
共有六个头文件,分别为 HumbleAdmin.h
HASetting.h
HAKit.h
HASession.h
HASNS.h
HAUser.h
HumbleAdmin.h
这个类中需要用户把从网站上获取到的项目信息在第一时间传给SDK。另外,实例化该类之后,可以获取终端用户之前登录的信息。
名称 |
使用方法 |
+currentSession |
Trusty 实例化后调用此方法,可获取终端用户的 session 信息。 |
+currentUser |
Trusty 实例化后调用此方法,可获取终端用户的 user 信息。 |
+setAppID:appSecret |
设置 AppID 和 AppSecret 信息。 |
+getAppID |
获取 AppID 。 |
+getAppSecret |
获取 AppSecret 。 |
HASetting.h
这个类是开发者对终端用户是否可以使用用户名密码登录的这是方式。
名称 |
属性功能 |
passwordEnabled |
将此属性设置为 YES 即可以使用密码登录,否则为 NO ,则不能使用密码登录。 |
HAKit.h
这个类是「可信 ID」的 UI 类,调用里面的方法,会自动绘制 UI 界面,来实现相对应的接口功能。
名称 |
使用方法 |
+haMainMenuView:设置:块 |
返回菜单界面 ,可以进行注册和登录 操作。操作完成后会返回 块 信息,包括是否成功以及失败后的 错误 信息。 |
+haLoginButton:设置:块 |
返回登录按钮 ,可以进行无密码登录、第三方登录 等登录操作。操作完成后会返回 块 信息,包括是否成功以及失败后的 错误 信息。 |
+haRegisterButton:设置:块 |
返回注册按钮 ,可以进行注册 等操作。操作完成后会返回 块 信息,包括是否成功以及失败后的 错误 信息。 |
+smsLoginButton:块 |
返回用于请求短信验证登录按钮 ,点击可以进行短信验证登录 的操作。操作完成后会返回 块 信息,包括请求是否成功以及失败后的 错误 信息。 |
+resetPasswordButton:块 |
返回用于请求找回密码按钮 ,可以进行找回密码 的操作。操作完成后会返回 块 信息,包括请求是否成功以及失败后的 错误 信息。 |
+thirdPartyLoginWithPlatform:withAppID:withAppSecret:withRedirectURL:withScope:andAuthData |
调用这个方法会设置DUL 第三方登录信息 。过程在上面的方法中成功授权后会返回 authData ,包括授权平台所返回的信息。 |
注意:如果要使用 DUL 第三方登录,请先配置 HASNS 中的 -handleOpenURL: 方法。
HASession.h
这个类是「可信 ID」的请求方法接口类,该类中包含 authToken 和 currentUser 两个属性,在请求结束后,该类的属性中都会获取到相应的值。
名称 |
使用方法 |
-init |
HASession 对象实例化方法。 |
–requestSMSOneTimePassword:块 |
一次性密码的获取接口,请求结束后会返回 块 信息,包括请求是否成功以及请求失败后的 错误 信息。请求成功,对应的手机号码上会收到验证短信。 |
–loginWithIdentification:andKey:块 |
终端用户登录接口,需要传入账户,密码或者一次性密码进行登录申请,请求结束后会返回 块 信息,包括请求是否成功以及请求失败后的 错误 信息。 |
–registerWithPhoneNumber:oneTimePassword:password:userInfo:块 |
终端用户注册接口,需要传入手机号码,一次性密码,密码以及开发者所需的终端用户注册时附带的信息,请求结束后会返回 块 信息,包括请求是否成功以及请求失败后的 错误 信息。 |
–exchangeAccessTokenWithSMSOneTimePassword:块 |
提权接口,终端用户想要修改密码,需要在这里先进行提权申请,获取 accesstoken,请求需要传入一次性密码,请求结束后会返回 块 信息,包括请求是否成功以及请求失败后的 错误 信息。 |
–resetPasswordWithAccessToken:newPassword:块 |
重置密码接口,需要传入 accessToken 和新密码,请求结束后会返回 块 信息,包括请求是否成功以及请求失败后的 错误 信息。 |
-logout |
登出可信ID 。 |
–updateCurrentUser:块 |
上传终端用户个人信息,传入信息格式为 Dictionary,请求结束后会返回 块 信息,包括请求是否成功以及请求失败后的 错误 信息。 |
–refreshCurrentUser |
本地刷新当前用户的个人信息,请求结束后会返回 块 信息,包括请求是否成功以及请求失败后的 错误 信息。 |
authToken |
向服务器进行登录请求时获取到的令牌。 |
authTokenExpirationTime |
服务器登录请求获取到的令牌的有效时间。 |
accessToken |
提权请求成功后返回的令牌。 |
accessTokenExpirationTime |
提权请求成功后返回令牌的有效时间。 |
currentUser |
登录申请成功后,用户的 HAUser 属性信息。 |
HASNS.h
这个类是「可信用户系统」的第三方登录接口类。在使用「可信用户系统」时,调用该类中的方法,即可使用第三方平台账号进行授权登录。
名称 |
使用方法 |
-loginWithBlock |
根据第三方平台类型 进行授权登录。登录完成后会返回 块 信息,包括登录是否成功以及失败后的 错误 信息。 |
-handleOpenURL |
处理授权后返回的信息。需要在 AppDelegate.m 中 添加 - application:openURL:sourceApplication:annotation: 方法。 |
type |
平台种类 |
appID |
平台 appID |
appSecert |
平台 appSecret |
redirectURL |
平台回调地址 |
scope |
平台应用权限 |
authData |
平台授权返回数据 |
HAUser.h
这个类是「可信 ID」的终端用户信返回类,开发者在调用用户登录方法时,传入初始化的该对象,请求成功后该对象就会附带有用户对应的信息包括 userID 、userName 、phoneNumber 和 email 四个属性。
名称 |
使用方法 |
-init |
HAUser 对象的实例化方法,对象实例化之后,可以对里面的 userID 、userName 、 phoneNumber 和 emailAddress 的属性进行读取。 |
userID |
用户的 UserID 信息。 |
phoneNumber |
用户的手机号码信息。 |
emailAddress |
用户的邮箱信息。 |
userName |
用户注册后得到的用户名。 |