quickLogin

立即使用

概述

封装了移动一键登录SDK

使用此模块之前建议先配置 config.xml 文件,配置完毕,需通过云端编译生效,配置方法如下:

  • 名称:quickLogin
  • 参数:appId、appKey
  • 配置示例:
 <feature name="quickLogin">
   <param name="appId_iOS" value="" />
   <param name="appKey_iOS" value="" />
   <param name="appId_android" value="" />
   <param name="appKey_android" value="" />
 </feature>
  • 字段描述:

appId_iOS、appId_android:(必须配置)应用的appid

appKey_iOS、appKey_android:(必须配置)应用密钥

getPhoneNumber

本方法用于发起取号请求,SDK完成网络判断、蜂窝数据网络切换等操作并缓存凭证scrip。

getPhoneNumber({},callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
   resultCode:'',  //字符类型;返回相应的结果码(仅iOS支持)
   desc:'',         //字符类型;调用描述(仅iOS支持)
    resultObj:{     //JSON对象类型 返回结果(仅android支持)
        resultCode:, //数字类型;返回码
        desc/resultString/resultDesc:'',   //字符串类型;失败时返回错误说明
        traceID:'',      //字符串类型;主要用于定位问题
    },
}

示例代码

var quickLogin = api.require('quickLogin');
quickLogin.getPhoneNumber({

},function(ret){
  console.log(JSON.stringify(ret))
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

getAuthorization

应用调用本方法时,SDK将拉起用户授权页面,用户确认授权后,SDK将返回token给应用客户端。可通过返回码200087监听授权页是否成功拉起

getAuthorization(callback(ret))

params

styles:

  • 类型:JSON 对象
  • 描述:(可选项)模块各部分的样式
  • 内部字段:
{
    logBtnOffsetY:314,         //(可选项)数字类型;登录按钮Y偏移量;默认:314
    numberOffsetY:164,         //(可选项)数字类型;号码栏Y偏移量;默认:164
    logBtnHeight:44,         //(可选项)数字类型;登录按钮高h 注意:必须大于40;默认:44
    numberTextSize:36,         //(可选项)数字类型;手机号码文字大小;默认:44
    numberTextColor: '#333333',     //(可选项)字符串类型;手机号码文字颜色,支持 rgb,rgba,#;默认:'#333333'
    logBtnText: '',     //(可选项)字符串类型;登陆按钮文字;默认:'本机号码一键登录'
    logBtnTextSize:16,         //(可选项)数字类型;登陆按钮文字大小;默认:16(仅iOS支持,androiid sdk设置不起作用)
    logBtnTextColor: '#FFFFFF',     //(可选项)字符串类型;登陆按钮文字颜色,支持 rgb,rgba,#;默认:'#FFFFFF'
    checkboxWH:12,         //(可选项)(checkboxWH、checkboxImgPath、checkboxImgUnCheck 安卓端必须同时设置或不设置)数字类型;复选框大小(只能正方形)必须大于12;默认:12
    checkboxImgPath:'',      //(可选项)(checkboxWH、checkboxImgPath、checkboxImgUnCheck 安卓端必须同时设置或不设置)字符串类型;复选框图片,例:‘umcsdk_check_image’(仅android支持)
    checkboxImgUnCheck:'',  //(可选项)(checkboxWH、checkboxImgPath、checkboxImgUnCheck 安卓端必须同时设置或不设置)字符串类型;复选框未选择图片,例:‘umcsdk_uncheck_image’(仅android支持)
    privacyOffsetYB:23,         //(可选项)数字类型;隐私条款Y偏移量(注:此属性为与屏幕底部的距离);默认:23
    logBtnOriginL:32,         //(可选项)数字类型;登录按钮的左边距 注意:按钮呈现的宽度在竖屏时必须大于屏幕的一半, 横屏时必须大于屏幕的三分之一;默认:32
    logBtnOriginR:32,         //(可选项)数字类型;登录按钮的右边距 注意:按钮呈现的宽度在竖屏时必须大于屏幕的一半, 横屏时必须大于屏幕的三分之一;默认:32
    appPrivacy:'',     //(可选项)字符串类型;隐私的内容模板;全句可自定义但必须保留"&&默认&&"字段表明SDK默认协议, 否则设置不生效,默认:sdk自带(仅iOS支持)
    privacySymbol:true, //(可选项)布尔类型;隐私条款默认协议是否开启书名号;默认:true(仅iOS支持)
    appPrivacyUrls:[{ //json数组对象;隐私条款跳转url设置,appPrivacy默认设置无效(仅iOS支持)
       name:'', //字符串类型;点击跳转的文字
       url:''    //字符串类型;跳转的url
    }],
    privacyAlignment:{  //(可选项)JSON对象类型;协议设置(仅android支持)
        privateText:'', //字符串类型;协议文本,必须包含【$$运营商条款$$】字段
         privateCustom:'', //字符串类型;自定义条款
         privateUrl:'',   //字符串类型;自定义条款连接
         privateCustom2:'', //字符串类型;自定义条款
         privateUrl2:'',   //字符串类型;自定义条款连接
    }
}

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
   resultCode:'',  //字符类型;返回相应的结果码(仅iOS支持)
   token:''        //字符类型;成功时返回:临时凭证,token有效期2min,一次有效,同一用户 (手机号)10分钟内获取token且未使用的数量不超过30个  (仅iOS支持)
    resultObj:{     //JSON对象类型 返回结果(仅android支持)
        resultCode:, //数字类型;返回码
        desc/resultString/resultDesc:'',   //字符串类型;失败时返回错误说明
        authType:, //字符串类型;认证类型 0/其他,1/wifi下网关鉴权,2/网关鉴权
        token:'',      //字符串类型;临时凭证
        authTypeDec:'',     //字符串类型;认证类型描述,对应authType
    },
}

示例代码

var quickLogin= api.require('quickLogin');
quickLogin.getAuthorization({
},function(ret){
  console.log(JSON.stringify(ret))
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

dismissViewController

授权页面的关闭

dismissViewController()

示例代码

var quickLogin= api.require('quickLogin');
quickLogin.dismissViewController();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

mobileAuth

本机号码校验

mobileAuth(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
   resultCode:'',//字符类型;接口返回码,“103000”为成功。(仅iOS支持)
   token:''       //字符类型;成功返回:临时凭证,token有效期2min,一次有效,同一用户(手机 号)10分钟内获取token且未使用的数量不超过30个  (仅iOS支持)
    resultObj:{     //JSON对象类型 返回结果(仅android支持)
        resultCode:, //数字类型;返回码
        authType:,   //数字类型;登陆类型
        authTypeDes:'', //字符串类型;登陆类型中文描述
        token:'',      //字符串类型;临时凭证
        traceID:'',     //字符串类型;用于定位问题
    },
}

示例代码

var quickLogin = api.require('quickLogin');
quickLogin.mobileAuth(function(ret){
  console.log(JSON.stringify(ret))
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

networkInfo

获取网络状态和运营商类型

networkInfo(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
   networkType:,//数字类型;0.无网络; 1.数据流量; 2.wifi; 3.数据+wifi
   carrier:          //数字类型;0.未知(未插sim卡,其它运营商等); 1.中国移动;
2.中国联通;3.中国电信          
}

示例代码

var quickLogin = api.require('quickLogin');
quickLogin.networkInfo(function(ret){
  console.log(JSON.stringify(ret))
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

delectScrip

删除临时取号凭证

delectScrip(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
   state:,//布尔类型;删除结果状态,(true:删除成功,false:删除失败)
}

示例代码

var quickLogin = api.require('quickLogin');
quickLogin.delectScrip(function(ret){
  console.log(JSON.stringify(ret))
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setTimeoutInterval

本方法用于设置取号、一键登录、本机号码校验请求的超时时间

setTimeoutInterval({params})

params

timeout:

  • 类型:数字类型
  • 描述:设置取号、授权请求和本机号码校验请求时的超时时间,开发者 不配置时,默认所有请求的超时时间都为8000,单位毫秒

示例代码

var quickLogin= api.require('quickLogin');
quickLogin.setTimeoutInterval({
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

错误码

  1. 103000 成功
  2. 103101 请求签名错误
  3. 103102 包签名/Bundle ID错误
  4. 103111 网关IP错误
  5. 103119 appid不存在
  6. 103211 其他错误,(如有需要请联系qq群609994083内的移动认证开发)
  7. 103902 scrip失效
  8. 103911 token请求过于频繁,10分钟内获取token且未使用的数量不超过30个
  9. 103273 预取号联通重定向
  10. 105002 移动取号失败
  11. 105003 电信取号失败
  12. 105021 已达当天取号限额
  13. 105302 appid不在白名单
  14. 105313 非法请求
  15. 200020 用户取消登录
  16. 200021 数据解析异常
  17. 200022 无网络
  18. 200023 请求超时
  19. 200025 其他错误(socket、系统未授权数据蜂窝权限等,如需要协助,请加入qq群 发问)
  20. 200027 未开启数据网络
  21. 200028 网络请求出错
  22. 200038 异网取号网络请求失败
  23. 200048 用户未安装sim卡
  24. 200050 EOF异常
  25. 200061 授权页面异常
  26. 200064 服务端返回数据异常
  27. 200072 CA根证书校验失败
  28. 200080 本机号码校验仅支持移动手机号
  29. 200082 服务器繁忙
  30. 200086 ppLocation为空
  31. 200087 仅用于监听授权页成功拉起
  32. 200089(已废除)SDK正在处理
  33. 200096 当前网络不支持取号