JGCertificate
概述
JGCertificate简介
JGCertificate模块封装了极光认证SDK,为开发者提供了一键登录功能,优化用户注册/登录、号码验证的体验,提高安全性
注意
此模块为 noidfa 版本。App在提交苹果审核时不需要勾选广告标识符(IDFA)
模块使用攻略
1.进入极光官网注册开发者账号; 2.进入管理控制台,创建应用程序,得到 AppKey(SDK与服务器端通过AppKey互相识别); 3.完成开发者认证; 4.选择要开通极光认证的应用程序,在应用设置中点击左侧的[极光认证]按钮。在应用介绍中填写[应用分类] 、[应用简介]。Android应用需要填写[应用包名]和[应用签名],iOS应用需要填写[Bundle ID],填写完成后点击[提交审核],如果应用程序同时具有Android和iOS版本,需要在此页面分别提交申请; 5.若开发者需要使用一键登录功能,待步骤4完成后,请在[一键登录设置]中选择要开通一键登录的平台,并填写RSA加密公钥,点击[提交审核]按钮
Androidconfig.xml中配置
<meta-data name="JPUSH_APPKEY" value="您应用的Appkey"/>
<meta-data name="JPUSH_CHANNEL" value="developer-default"/>
字段描述:
· JPUSH_APPKEY:通过极光推送网站获得
· JPUSH_CHANNEL:目前默认‘developer-default’
模块接口
init
初始化
init({params}, callback(ret))
params
key:
- 类型:字符串
- 描述:appkey(仅iOS有效)
callback(ret)
ret:
- 类型:JSON 对象
- 内部字段:
{
status: true, //布尔型;true||false
}
示例代码
var demo = api.require('JGCertificate');
demo.init({
key : '',
}, function(ret){
alert(JSON.stringify(ret));
});
可用性
Android系统,iOS系统
可提供的1.0.0及更高版本
checkVerifyEnable
判断网络环境是否支持
checkVerifyEnable(callback(ret))
callback(ret)
ret:
- 类型:JSON 对象
- 内部字段:
{
status: true, //布尔型;true||false
}
示例代码
var demo = api.require('JGCertificate');
demo.checkVerifyEnable({
}, function(ret){
alert(JSON.stringify(ret));
});
可用性
Android系统,iOS系统
可提供的1.0.0及更高版本
getToken
获取认证token
getToken(callback(ret))
callback(ret)
ret:
- 类型:JSON 对象
- 内部字段:
{
status: true, //布尔型;true||false
token:'' //字符串类型;
}
示例代码
var demo = api.require('JGCertificate');
demo.getToken({
}, function(ret){
alert(JSON.stringify(ret));
});
可用性
Android系统,iOS系统
可提供的1.0.0及更高版本
preLogin
登录预取号
preLogin(callback(ret))
callback(ret)
ret:
- 类型:JSON 对象
- 内部字段:
{
code:, //数字类型;
}
示例代码
var demo = api.require('JGCertificate');
demo.preLogin({
}, function(ret){
alert(JSON.stringify(ret));
});
可用性
Android系统,iOS系统
可提供的1.0.0及更高版本
clearPreLoginCache
清除预取号缓存
clearPreLoginCache(callback(ret))
示例代码
var demo = api.require('JGCertificate');
demo.clearPreLoginCache({
}, function(ret){
alert(JSON.stringify(ret));
});
可用性
Android系统,iOS系统
可提供的1.0.0及更高版本
getAuthorization
请求授权一键登录
getAuthorization({params}, callback(ret))
params
type:
- 类型:数字类型
- 描述:一键登录页面类型(仅iOS支持)
- 默认:0
- 0:全屏
- 1:弹窗
autoFinish
- 类型:布尔类型
- 描述:(可选项)授权完成是否自动关闭授权页(仅Android支持)
- 默认:true
callback(ret)
ret:
- 类型:JSON 对象
- 内部字段:
{
code:, //数字类型;
content:, //字符串类型;事件描述
type:, //数字类型;事件类型
- 1 授权页被关闭
- 2 授权页面被拉起
- 3 运营商协议被点击
- 4 自定义协议1被点击
- 5 自定义协议2被点击
- 6 checkBox变为选中
- 7 checkBox变为未选中
- 8 登录按钮被点击
}
示例代码
var demo = api.require('JGCertificate');
demo.getAuthorization({
}, function(ret){
alert(JSON.stringify(ret));
});
可用性
Android系统,iOS系统
可提供的1.0.0及更高版本
dismissLoginController
取消、返回
dismissLoginController(callback(ret))
callback(ret)
ret:
- 类型:JSON 对象
- 内部字段:
{
status:, //布尔型;true||false
}
示例代码
var demo = api.require('JGCertificate');
demo.dismissLoginController({
}, function(ret){
alert(JSON.stringify(ret));
});
可用性
Android系统,iOS系统
可提供的1.0.0及更高版本
code码列表
- 1000 verify consistent 手机号验证一致
- 1001 verify not consistent 手机号验证不一致
- 1002 unknown result 未知结果
- 1003 token expired token 失效
- 1004 sdk verify has been closed SDK发起认证未开启
- 1005 AppKey 不存在 请到官网检查 Appkey 对应的应用是否已被删除
- 1006 frequency of verifying single number is beyond the maximum limit 同一号码自然日内认证消耗超过限制
- 1007 beyond daily frequency limit appKey自然日认证消耗超过限制
- 1008 AppKey 非法 请到官网检查此应用详情中的 Appkey,确认无误
- 1009 当前的 Appkey 下没有创建 iOS 应用;你所使用的 JCore 版本过低 请到官网检查此应用的应用详情;更新应用中集成的 JCore 至最新。
- 1010 verify interval is less than the minimum limit 同一号码连续两次提交认证间隔过短
- 2000 token request success 获取token 成功
- 2001 fetch token error 获取token失败
- 2002 sdk init failed sdk初始化失败
- 2003 netwrok not reachable 网络连接不通
- 2004 get uid failed 极光服务注册失败
- 2005 request timeout 请求超时
- 2006 fetch config failed 获取配置失败
- 2008 Token requesting, please wait 正在获取token中,稍后再试
- 2009 verifying, please try again later 正在认证中,稍后再试
- 2014 internal error while requesting token 请求token时发生内部错误
- 2015 rsa encode failed rsa加密失败
- 2016 network type not supported 当前网络环境不支持认证
- 2017 carrier config invalid 运营商配置无效
- 3000 get code sucess. 获取uuid成功
- 3001 SDK is not initial yet 没有初始化
- 3002 invalided phone number 无效电话号码
- 3003 request frequent in Minimum Time Interval 两次请求超过最小设置的时间间隔
- 3004 请求错误,具体查看错误信息msg
- 4001 参数错误。请检查参数,比如是否手机号格式不对
- 4009 解密rsa失败
- 4014 appkey is blocked 功能被禁用
- 4018 没有足够的余额
- 4031 不是认证用户
- 4032 获取不到用户配置
- 4033 Login feature is not available 未开启一键登录
- 6000 loginToken request success 获取loginToken成功
- 6001 fetch loginToken failed 获取loginToken失败
- 6002 login cancel 用户取消登录
- 6003 UI load error UI加载异常
- 6004 authorization requesting, please try again later 正在登录中,稍候再试
- 6006 prelogin scrip expired 预取号信息过期,请重新预取号
- 7000 preLogin success 预取号成功
- 7001 preLogin failed 预取号失败
- 7002 preLogin requesting, please try again later 取号中
- 8000 init success 初始化成功
- 8004 init failed 初始化失败
- 8005 init timeout 初始化超时