@yidun/quickpass-plugin-cordova
v1.3.0
Published
yidun quickpass cordova plugin
Downloads
180
Readme
号码认证
直连三大运营商,一步校验手机号与当前SIM卡号一致性。优化注册/登录/支付等场景验证流程
平台支持(兼容性)
| Android| iOS |
| ---- |------------|
| 适用版本区间:4.4以上| 适用版本区间:9以上 |
环境准备
资源引入/集成
点击下载 config.js
cordova plugin add @yidun/quickpass-plugin-cordova
调用示例
- Html
<html>
<head>
<link rel="stylesheet" type="text/css" href="css/index.css">
<title>Hello World</title>
</head>
<body>
<div class="div">
<div>
<h3>号码认证 quickLogin</h3>
<button id="verifyBtn">登录</button>
</div>
</div>
<script type="text/javascript" src="cordova.js"></script>
<!-- config.js 为授权界面配置文件,可直接下载 -->
<script type="text/javascript" src="js/config.js"></script>
<script type="text/javascript" src="js/index.js"></script>
</body>
</html>
- JS
var quickPassInstance
window.YidunQuickPass.shouldQuickLogin(function (data) {
debugLog('shouldQuickLogin callback: ' + data.success)
if (!data.success) {
// TODO: 条件未就绪,不能进行一键登录。可提示用户:'请检查网络,必须开启蜂窝流量,必须上网网卡为移动、电信、联通运营商'
return
}
quickPassInstance = new window.YidunQuickPass({
businessId: '易盾的 businessId',
loginType: 'quickLogin',
timeout: 3000
})
})
document.getElementById('verifyBtn').addEventListener('click', function () {
var token
quickPassInstance.preFetchNumber(function (data) {
if (!data.success) {
// TODO: 预取号失败
return
}
token = data.token;
var config;
var nativePlatform = window.device && window.device.platform && window.device.platform.toLowerCase();
if (nativePlatform === 'android') {
config = androidConfig // androidConfig 为安卓端配置文件,从 config.js 引入
} else if (nativePlatform === 'ios') {
config = iosLightConfig // iosLightConfig为 iOS 端配置文件,从 config.js 引入
}
// 配置授权页页面
quickPassInstance.setUiConfig(config, function (data) {});
quickPassInstance.login(function (data) {
if (!data.success && !data.cancel) {
// TODO: 授权失败
return
} else if (data.cancel) {
// TODO: 用户取消取号
return
}
// 关闭授页
quickPassInstance.closeAuthController()
$.post('您的后端认证接口', {
token,
accessToken: data.accessToken
}, function () {
// TODO: 业务逻辑
})
});
})
})
SDK方法说明
1. 初始化
代码说明:
var quickPassInstance = new YidunQuickPass(options, function (data) {
if (data.success) {
// TODO: 初始化成功
} else {
// TODO: 初始化失败
}
})
参数说明:
options 入参说明:
|参数|类型|是否必填|默认值|描述| |----|----|--------|------|----| |businessId|String|是|无|易盾分配的业务id| | loginType|String|是|无|登录类型。 quickLogin 表示一键登录 quickPass 表示本机校验 | | timeout|Number|否|3000|运营商预取号和授权登录接口的超时时间,单位毫秒|
回调参数说明:
|回调参数|类型|描述| |----|----|----| | success|Boolean|初始化成功|
2. 预取号
代码说明:
quickPassInstance.preFetchNumber(function (result) {
if (!result.success) {
// TODO: 预取号失败处理
} else {
// TODO: 预取号成功处理,可以进行授权页面配置和调起授权页
}
})
参数说明:
回调参数说明:
|回调参数|类型| 描述 | |----|----|--------------------------| | result.success|Boolean| 预取号是否成功 | | result.mobileNumber|String| 如果预取号成功则返回掩码,否则无此字段 | | result.token|String| 如果预取号成功则返回易盾token,否则无此字段 |
3. 自定义授权页面
代码说明:
quickPassInstance.setUiConfig(config, function (data) {
var platform = device.platform.toLowerCase()
if (platform === 'ios') {
// TODO:iOS事件回调处理业务
} else if (platform === 'android') {
// TODO: android事件回调处理业务
}
})
参数说明:
config 入参说明:
|参数|类型|是否必填|默认值|描述| |----|----|--------|------|----| |config|Object|是|无|自定义配置项|
iOS 回调参数说明:
|回调参数|类型|描述| |----|----|----| | data.action|String|authViewDidLoad 表示正在加载授权页authViewWillAppear 表示授权页已经出现 authViewWillDisappear 表示授权页将要消失 authViewDidDisappear表示授权页已经消失authViewDealloc 表示授权页销毁 appDPrivacy 表示点击了默认协议appFPrivacy 表示点击了议第一个协议点击 appSPrivacy 表示点击了第二个协议 loginAction 表示点击了登录按钮,data.checked = true 表示在点击登录按钮时复选框选已选中反之 checkedAction 表示点击了复选框,data.checked = true 表示复选框已选中反之|
Android 回调参数说明:
|参数|类型|描述| |----|----|----| | data.viewId | Number | 事件目标 | | data.lifecycle | String |onCreate - 页面创建,onStart - 页面已开始活动,onResume - 页面展示,onPause - 页面非活动状态,onStop - 页面已停止,onDestroy - 页面销毁| | data.clickViewType| String |privacy - 隐私协议点击事件,checkbox - 复选框点击事件(含isCheckboxChecked: 0/1),loginButton - 登录按钮点击事件(含isCheckboxChecked: 0/1),leftBackButton - 左上角返回按钮点击事件| | data.isCheckboxChecked| String |协议复选框的值,仅在复选框事件和登录按钮点击事件中存在|
config 可配置项说明: android版
开发者不得通过任何技术手段,将授权页面的隐私栏、手机掩码号、供应商品牌内容隐藏、覆盖 网易易盾与运营商会对应用授权页面进行审查,若发现上述违规行为,网易易盾有权将您的一键登录功能下线
状态栏
| 配置项 | 说明 | | ------------------------------------------------- | -------------------------------------- | | statusBarColor:String | 设置状态栏背景颜色,十六进制RGB值,如 "#ff0000"| | isStatusBarDarkColor:boolean | 设置状态栏字体图标颜色是否为暗色(黑色) |
导航栏
| 配置项 | 说明 | | :------------------------------------------------ | ------------------------------------------------------------ | | navBackIcon:String | 导航栏图标,图标放在 static 下,这里配置static/图标名字 | | navBackIconWidth:int | 设置导航栏返回图标的宽度,单位 dp | | navBackIconHeight:int | 设置导航栏返回图标的高度,单位 dp | | navBackIconGravity:int | 设置导航栏返回图标位置,居左 3,居右 5,默认居左 | | navBackIconMargin:int | 设置导航栏返回距离左边的距离,单位 dp | | isHideBackIcon:boolean | 设置是否隐藏导航栏返回按钮 | | navBackgroundColor:String | 设置导航栏背景颜色,十六进制RGB值,如 "#ff0000" | | navHeight:int | 设置导航栏高度,单位 dp | | navTitle:String | 设置导航栏标题 | | navTitleColor:String | 设置导航栏标题颜色,十六进制RGB值,如 "#ff0000"值 | | navTitleSize:int | 设置导航栏标题大小,单位 sp | | navTitleDpSize:int | 设置导航栏标题大小,单位 dp | | isNavTitleBold:boolean | 设置导航栏标题是否为粗体 | | isHideNav:boolean | 设置是否隐藏导航栏 |
应用 Logo
| 配置项 | 说明 | | :------------------------------------------ | ------------------------------------------------------------ | | logoIconName:String | 应用 logo 图标,图标放在 static 下,这里配置static/图标名字 | | logoWidth:int | 设置应用logo宽度,单位dp | | logoHeight:int | 设置应用 logo 高度,单位 dp | | logoTopYOffset:int | 设置 logo 顶部 Y 轴偏移,单位 dp | | logoBottomYOffset:int | 设置 logo 距离屏幕底部偏移,单位 dp | | logoXOffset:int | 设置 logo 水平方向的偏移,单位 dp | | isHideLogo:boolean | 设置是否隐藏 logo |
手机掩码
| 配置项 | 说明 | | :----------------------------------------------------------- | ------------------------------------------------------------ | | maskNumberColor:String | 设置手机掩码颜色,十六进制RGB值,如 "#ff0000" | | maskNumberSize:int | 设置手机掩码字体大小,单位 px | | maskNumberXOffset:int | 设置手机掩码水平方向的偏移,单位 dp | | maskNumberDpSize:int | 设置手机掩码字体大小,单位 dp | | maskNumberTopYOffset:int | 设置手机掩码顶部Y轴偏移,单位 dp | | maskNumberBottomYOffset:int | 设置手机掩码距离屏幕底部偏移,单位 dp |
认证品牌
| 配置项 | 说明 | | :---------------------------------------------- | ------------------------------------ | | sloganSize:int | 设置认证品牌字体大小,单位 px | | sloganDpSize:int | 设置认证品牌字体大小,单位 dp | | sloganColor:String | 设置认证品牌颜色,十六进制RGB值,如 "#ff0000" | | sloganTopYOffset:int | 设置认证品牌顶部 Y 轴偏移,单位 dp | | sloganBottomYOffset:int | 设置认证品牌距离屏幕底部偏移,单位 dp | | sloganXOffset:int | 设置认证品牌水平方向的偏移,单位 dp |
登录按钮
| 配置项 | 说明 | | :----------------------------------------------------- | ---------------------------------------------------- | | loginBtnText:String | 设置登录按钮文本 | | loginBtnTextSize:int | 设置登录按钮文本字体大小,单位 px | | loginBtnTextDpSize:int | 设置登录按钮文本字体大小,单位 dp | | loginBtnTextColor:String | 设置登录按钮文本颜色,十六进制RGB值,如 "#ff0000" | | loginBtnWidth:int | 设置登录按钮宽度,单位 dp | | loginBtnHeight:int | 设置登录按钮高度,单位 dp | | loginBtnMarginLeft:int | 设置登录按钮左边距,单位 dp | | loginBtnMarginRight:int | 设置登录按钮右边距,单位 dp | | loginBtnBackgroundRes:String | 设置登录按钮背景图标,图标放在 static 下,这里配置static/图标名字 | | loginBtnTopYOffset:int | 设置登录按钮顶部Y轴偏移,单位 dp | | loginBtnBottomYOffset:int | 设置登录按钮距离屏幕底部偏移,单位 dp | | loginBtnXOffset:int | 设置登录按钮水平方向的偏移,单位 dp |
隐私协议
| 配置项 | 说明 | | :----------------------------------------------------------- | ------------------------------------------------------------ | | privacyTextColor:String | 设置隐私栏文本颜色,不包括协议 ,如若隐私栏协议文案为:登录即同意《中国移动认证条款》且授权 QuickLogin 登录, 则该API对除协议‘《中国移动认证条款》’区域外的其余文本生效 | | privacyDialogTextColor:String | 设置协议未勾选弹窗隐私栏文本颜色,不包括协议 | | privacyProtocolColor:String | 设置隐私栏协议颜色 。例如:登录即同意《中国移动认证条款》且授权 QuickLogin 登录 , 则该 API 仅对‘《中国移动认证条款》’文案生效 | | privacyDialogProtocolColor:String | 设置协议未勾选弹窗隐私栏协议颜色 | | privacySize:int | 设置隐私栏区域字体大小,单位 px | | privacyDpSize:int | 设置隐私栏区域字体大小,单位 dp | | privacyTopYOffset:int | 设置隐私栏顶部Y轴偏移,单位 dp | | privacyBottomYOffset:int | 设置隐私栏距离屏幕底部偏移,单位 dp | | privacyWidth:int | 设置隐私栏区域宽度,单位 dp | | privacyTextMarginLeft:int | 设置隐私栏复选框和文字内边距,单位 dp | | privacyMarginLeft:int | 设置隐私栏水平方向的偏移,单位 dp | | privacyMarginRight:int | 设置隐私栏右侧边距,单位 dp | | privacyState:boolean | 设置隐私栏协议复选框勾选状态,true 勾选,false 不勾选 | | isHidePrivacyCheckBox:boolean | 设置是否隐藏隐私栏勾选框 | | isPrivacyTextGravityCenter:boolean | 设置隐私栏文案换行后是否居中对齐,如果为true则居中对齐,否则左对齐 | | checkBoxGravity:int | 设置隐私栏勾选框与文本协议对齐方式,可选择顶部(48),居中(17),底部(80)等 | | checkBoxWith:int | 设置隐私栏复选框宽度,单位 dp| | checkBoxHeight:int | 设置隐私栏复选框高度,单位 dp | | checkedImageName:string | 设置隐私栏复选框选中时的图片资源,图标放在 static 下,这里配置static/图标名字 | | unCheckedImageName:String | 设置隐私栏复选框未选中时的图片资源,图标放在 static 下,这里配置static/图标名字 | | privacyTextStart:String | 设置隐私栏声明部分起始文案 。如:隐私栏声明为"登录即同意《隐私政策》和《中国移动认证条款》且授权易盾授予本机号码",则可传入"登录即同意" | | privacyTextStartSize:int | 隐私栏起始文案字体大小 | | privacyLineSpacingAdd:int | 隐私栏文本间距 | | privacyLineSpacingMul:int | 隐私栏文本间距倍数 | | protocolConnect:String | 设置隐私栏运营商协议和自定义协议的连接符 | | userProtocolConnect:String | 设置隐私栏自定义协议之间的连接符 | | operatorPrivacyAtLast:boolean | 运营商协议是否在末尾 | | isHidePrivacySmh:boolean | 是否隐藏运营商协议书名号 | | protocolText:String | 设置隐私栏协议文本 | | protocolLink:String | 设置隐私栏协议链接 | | protocol2Text:String | 设置隐私栏协议 2 文本 | | protocol2Link:String | 设置隐私栏协议 2 链接 | | protocol3Text:String | 设置隐私栏协议 3 文本 | | protocol3Link:String | 设置隐私栏协议 3 链接 | | privacyTextEnd:String | 设置隐私栏声明部分尾部文案。如:隐私栏声明为"登录即同意《隐私政策》和《中国移动认证条款》且授权易盾授予本机号码",则可传入"且授权易盾授予本机号码" |
协议详情 Web 页面导航栏
| 配置项 | 说明 | | :----------------------------------------------------------- | ------------------------------------------------------------ | | protocolNavTitle:String | 设置协议 Web 页面导航栏标题,如果需要根据不同运营商设置不同标题| | protocolNavTitleColor:String | 设置协议 Web 页面导航栏标题颜色 | | protocolNavBackIcon:String | 设置协议 Web 页面导航栏返回图标,图标放在 static 下,这里配置static/图标名字 | | protocolNavColor:String | 设置协议Web页面导航栏颜色 | | protocolNavHeight:int | 设置协议 Web 页面导航栏高度 | | protocolNavTitleSize:int | 设置协议Web页面导航栏标题大小,单位 px | | protocolNavTitleDpSize:int | 设置协议 Web 页面导航栏标题大小,单位 dp | | protocolNavBackIconWidth:int | 设置协议 Web 页面导航栏返回按钮宽度,单位 dp | | protocolNavBackIconHeight:int | 设置协议 Web 页面导航栏返回按钮高度,单位 dp | | protocolNavBackIconMargin:int | 设置协议 Web 页面导航栏返回按钮距离左边的距离,单位 dp |
其他
| 配置项 | 说明 | | :----------------------------------------------------------- | ------------------------------------------------------------ | | backgroundImage:String | 设置登录页面背景,图标放在 static 下,这里配置static/图标名字 | | backgroundGif:String | 设置登录页面背景为 Gif,Gif 图标放在 static 下,这里配置static/图标名字 | | backgroundVideo:String | 设置登录页面背景为视频地址,如http://xxx | | backgroundVideoImage:String | 设置视频背景时的预览图,图标放在 static 下,这里配置static/图标名字,配合 backgroundVideo 使用 | | enterAnimation:String | 设置授权页进场动画,enterAnimation 进场动画xml无后缀文件名。放置在 android anim目录下 | | exitAnimation:String | 设置授权页退出动画,exitAnimation 进场动画xml无后缀文件名。放置在 android anim目录下 | | isLandscape:boolean | 是否横屏 | | isDialogMode:boolean | 是否弹窗模式 | | isShowLoading:boolean | 授权登录页是否显示loading View | | isBackPressedAvailable:boolean | 授权登录页物理返回键是否可用 | | dialogWidth:int | 授权页弹窗宽度,单位 dp | | dialogHeight:int | 授权页弹窗高度,单位 dp | | dialogX:int | 授权页弹窗 X 轴偏移量,以屏幕中心为原点 | | dialogY:int | 授权页弹窗 Y 轴偏移量,以屏幕中心为原点 | | isBottomDialog:boolean | 授权页弹窗是否贴于屏幕底部true:显示在屏幕底部,dialogY 失效 false:不显示在屏幕底部,以 dialogY 参数为准 | | isProtocolDialogMode:boolean | 协议详情页是否开启弹窗模式 | | isPrivacyDialogAuto:boolean | 协议未勾选弹窗点击是否自动登录 | | isShowPrivacyDialog:boolean | 是否显示协议未勾选默认弹窗 | | privacyDialogText:String | 协议未勾选弹窗自定义message | | privacyDialogSize:float | 协议未勾选弹窗文本字体大小 | | isVirtualButtonHidden:boolean | 是否隐藏虚拟键 |
自定义view
| 配置项 | 说明 | | :---------------------------------------------- | ------------------------------------ | | widgets:JsonArray | 自定义view数组 | | ∟ viewId:String | 控件 id | | ∟ type:String | 控件类型,可选值为 TextView、Button、ImageView | | ∟ top:int | 控件距离顶部的偏移,单位 dp| | ∟ left:int | 控件距离左侧的偏移,单位 dp| | ∟ right:int | 控件距离右侧的偏移,单位 dp| | ∟ bottom:int | 控件距离底部的偏移,和top互斥,单位 dp| | ∟ width:int | 控件宽度,单位 dp | | ∟ height:int| 控件高度,单位 dp | | ∟ text:String| 控件文本,单位 dp | | ∟ font:int| 控件文本大小,单位 sp | | ∟ textColor:String| 控件文本颜色,十六进制颜色码 | | ∟ clickable:boolean| 控件是否可点击,单位 sp | | ∟ backgroundColor:String| 控件背景颜色,十六进制颜色码 | | ∟ backgroundImgPath:String| 控件背景图片,图片放在 static 下,这里配置 static/图片文件名 | | ∟ positionType:int| 添加控件的位置类型,1表示位于导航栏下方的body部分 |
config 可配置项说明: iOS版
设计规范概览 开发者不得通过任何技术手段,将授权页面的隐私栏、手机掩码号、供应商品牌内容隐藏、覆盖 网易易盾与运营商会对应用授权页面进行审查,若发现上述违规行为,网易易盾有权将您的一键登录功能下线
基础配置
| 属性 | 说明 |
| :-------- | -------- |
| backgroundColor |设置授权页面背景颜色|
| authWindowPop | 设置窗口类型0 表示全屏模式 1 表示窗口在屏幕的中间 2 表示窗口在屏幕的底部(不支持横屏)|
| faceOrientation |设置授权页面方向 0 表示设置保持直立1 表示左横屏 2 表示右横屏 3 表示左右横屏 4 屏幕全旋转|
| bgImage |设置授权转背景图片,例如 :"图片名.后缀"|
| contentMode |设置背景图片显示模式 0 表示 UIViewContentModeScaleToFill,1表示UIViewContentModeScaleAspectFit ,2表示UIViewContentModeScaleAspectFill|
| hidesBottomBarWhenPushed |进入下一个页面前,将该属性设置为YES即可隐藏TabBar,默认不隐藏|
转场动画
| 属性 | 说明 | | :-------- | -------- | | modalTransitionStyle | 设置授权转场动画 0 表示下推1 表示翻转2 表示淡出|
自定义控件
"widgets": [
{
"type": "UIButton",
"image": "weixin",
"title": "",
"titleColor": "#000000",
"titleFont": 12,
"cornerRadius": 20,
"action": "handleCustomEvent1",
"frame": {"mainScreenLeftDistance":70,"mainScreenTopDistance":340,"width":40,"height":40},
"backgroundImage":""
},
{
"type": "UIButton",
"image": "qq",
"title": "",
"titleColor": "#FFFFFF",
"titleFont": 12,
"cornerRadius": 20,
"action": "handleCustomEvent2",
"frame": {"mainScreenCenterXWithLeftDistance":0,"mainScreenTopDistance":340,"width":40,"height":40},
"backgroundImage": ""
},
{
"type": "UIButton",
"image": "weibo",
"title": "",
"titleColor": "#FFFFFF",
"titleFont": 12,
"cornerRadius": 20,
"action": "handleCustomEvent3",
"frame": {"mainScreenRightDistance":70,"mainScreenTopDistance":340,"width":40,"height":40},
"backgroundImage": ""
},
{
"type": "UIButton",
"image": "",
"title": "其他登录方式",
"titleColor": "#000000",
"titleFont": 14,
"cornerRadius": 20,
"action": "handleCustomLabel",
"backgroundImage": "login_btn_normal",
"backgroundColor": "#000000",
"frame": {"mainScreenLeftDistance":80,"mainScreenRightDistance":80,"mainScreenTopDistance":280,"height":40}
},
{
"type": "UILabel",
"textColor": "#FFFFFF",
"font": 15,
"cornerRadius": 20,
"action": "handleCustomLabel1",
"text": "其他登录方式",
"textAlignment": 1,
"backgroundColor": "#000000",
"frame": {"mainScreenLeftDistance":80,"mainScreenRightDistance":80,"mainScreenBottomDistance":400,"height":40}
}
]
| 配置项 | 说明 | | :---------------------------------------------- | ------------------------------------ | | widgets:JsonArray | 自定义view数组 | | ∟ type:String |控件类型,可选值为 UILabel、UIButton| | ∟ image:String |UIButton显示的图片。内容为图片名,不需要加图片后缀| | ∟ title:String |UIButton显示的文字| | ∟ titleColor:String |UIButton显示的字体颜色| | ∟ titleFont:int |字体的大小| | ∟ cornerRadius:int |控件的圆角| | ∟ backgroundImage:String |UIButton的背景图片| | ∟ backgroundColor:String | 控件背景颜色| | ∟ mainScreenLeftDistance:int |距离屏幕左边的距离,默认为0 | | ∟ mainScreenRightDistance:int |距离屏幕右边的距离,默认为0 | | ∟ mainScreenTopDistance:int |距离屏幕顶部的距离,默认为0 | | ∟ mainScreenCenterXWithLeftDistance:int |为0时,居中显示。大于0,向屏幕左侧偏移。小于0,向右侧偏移| | ∟ width:int |控件的宽度,默认为0 | | ∟ height:int |控件的高度,默认为0 | | ∟ textAlignment:int |0,文本左对齐。1,文本居中显示。2文本右对齐| | ∟ text:String |UILabel显示的文字| | ∟ textColor:String |UILabel的字体颜色| | ∟ action:String |设置可点击控件的点击事件,在监听中回调。详见事件监听 |
背景设置视频
| 属性 | 说明 | | :-------- | -------- | | localVideoFileName | 设置视频本地名称 例如xx.mp4* | | isRepeatPlay | 设置是否重复播放视频,YES 表示重复播放,NO 表示不重复播放| | videoURL | 设置网络视频的地址|
背景设置 Gif
| 属性 | 说明 | | :-------- | -------- | | animationRepeatCount | 设置动画重复的次数 -1无限重复 | | animationImages | 设置图片数组| | animationDuration | 设置动画的时长|
状态栏
| 属性 | 说明 | | :-------- | -------- | | statusBarStyle | 设置状态栏样式 iOS13之前 0表示文字黑色,1表示文字白色 iOS13之后 0表示自动选择黑色或白色,3 表示文字黑色,2 表示文字白色|
导航栏
| 属性 | 说明 | | :-------- | -------- | | navBarHidden | 导航栏是否隐藏 | | navBgColor | 设置导航栏背景颜色 | | navText | 设置导航栏标题 | | navTextFont | 设置导航栏标题字体大小| | navTextColor | 设置导航栏标题字体颜色| | navTextHidden| 设置导航栏标题是否隐藏,默认不隐藏| | navReturnImg | 设置导航返回图标,例如:"back-1" | | navReturnImgLeftMargin | 设置导航返回图标距离屏幕左边的距离,默认0 | | navReturnImgBottomMargin | 设置导航返回图标距离屏幕底部的距离,默认0 | | navReturnImgWidth | 设置导航返回图标的宽度,默认44 | | navReturnImgHeight| 设置导航返回图标的高度 , 默认44 | |
应用 Logo
| 属性 | 说明 | | :-------- | -------- | | logoImg | 设置logo图片, 例如 :"图片名.后缀"]| | logoWidth | 设置logo图片宽度 | | logoHeight | 设置logo图片高度 | | logoOffsetTopY |设置logo图片沿Y轴偏移量, logoOffsetTopY为距离屏幕顶部的距离 ,默认为20| | logoOffsetX | 设置logo图片沿X轴偏移量,logoOffsetX = 0居中显示| | logoHidden| 设置logo图片是否隐藏,默认不隐藏|
手机掩码
| 属性 | 说明 | | :-------- | -------- | | numberColor | 设置手机号码字体颜色| | numberFont | 设置手机号码字体大小, 默认18 | | numberOffsetTopY | 设置手机号码沿Y轴偏移量, numberOffsetTopY为距离屏幕顶部的距离 ,默认为100| | numberOffsetX | 设置logo图片沿X轴偏移量,logoOffsetX = 0居中显示| | numberHeight| 设置手机号码框的高度 默认27| | numberBackgroundColor| 设置手机号码的背景颜色| | numberCornerRadius| 设置手机号码的控件的圆角| | numberLeftContent| 设置手机号码的左边描述内容,默认为空| | numberRightContent| 设置手机号码的右边描述内容,默认为空色|
认证品牌
| 属性 | 说明 | | :-------- | -------- | | brandColor | 设置认证服务品牌文字颜色| | brandBackgroundColor | 设置认证服务品牌背景颜色| | brandFont | 设置认证服务品牌文字字体 默认12| | brandWidth | 设置认证服务品牌的宽度, 默认200| | brandHeight| 设置认证服务品牌的高度, 默认16| | brandOffsetX| 设置认证服务品牌X偏移量 ,brandOffsetX = 0居中显示| | brandOffsetTopY| 设置认证服务品牌Y偏移量, brandOffsetTopY为距离屏幕顶部的距离 ,默认为150| | brandHidden| 设置是否隐藏认证服务品牌,默认显示|
登录按钮
| 属性 | 说明 | | :-------- | -------- | | logBtnText | 设置登录按钮文本| | logBtnTextFont | 设置登录按钮字体大小| | logBtnTextColor | 设置登录按钮文本颜色| | logBtnOffsetTopY | 设置登录按钮Y偏移量 ,logBtnOffsetTopY为距离屏幕顶部的距离 ,默认为200| | logBtnRadius| 设置登录按钮圆角,默认8| | logBtnUsableBGColor| 设置登录按钮背景颜色| | logBtnEnableImg| 设置登录按钮可用状态下的背景图片| | logBtnHighlightedImg| 登录按钮高亮状态下的背景图片| | logBtnOriginLeft| 登录按钮的左边距 ,横屏默认40 ,竖屏默认260| | logBtnOriginRight| 设置登录按钮的左边距,横屏默认40 ,竖屏默认260| | logBtnHeight| 设置登录按钮的高度,默认44|
隐私协议
若勾选框需要展示,请务必设置勾选框的选中态图片与未选中态图片 协议未勾选时,登录按钮是否可点击可以自定义设置,弹窗提示的样式也可以自定义
| 属性 | 说明 | | :-------- | -------- | | unCheckedImageName | 例如:图片名| | checkedImageName | 例如:图片名| | checkboxWH| 设置复选框大小(只能正方形) ,默认 12| | privacyState| 设置复选框默认状态 默认:NO | | checkBoxAlignment| 设置隐私条款check框位置 0 表示相对协议顶对齐 1 表示相对协议中对齐 2 表示相对协议下对齐 默认顶对齐| | checkedSelected| 设置复选框勾选状态,YES:勾选,NO:取消勾选状态| | checkBoxMargin| 设置复选框距离隐私条款的边距 默认 8| | appPrivacyOriginLeftMargin| 设置隐私条款距离屏幕左边的距离 默认 60| | appPrivacyOriginRightMargin| 设置隐私条款距离屏幕右边的距离 默认 40| | appPrivacyOriginBottomMargin| 设置隐私条款距离屏幕的距离 默认 40| | privacyNavReturnImg| 设置用户协议界面,导航栏返回图标,默认用导航栏返回图标| | appPrivacyText| 设置隐私的内容模板:全句可自定义但必须保留"《默认》"字段表明SDK默认协议,否则设置不生效。必设置项(参考SDK的demo)appPrivacyText设置内容:登录并同意《默认》和易盾协议1、网易协议2登录并支持一键登录,展示:登录并同意中国移动条款协议和易盾协议1、网易协议2登录并支持一键登录 | | appFPrivacyText| 设置开发者隐私条款协议名称(第一个协议)| | appFPrivacyURL| 设置开发者隐私条款协议url(第一个协议)| | appSPrivacyText| 设置开发者隐私条款协议名称(第二个协议)| | appSPrivacyURL| 设置开发者隐私条款协议url(第二个协议)| | shouldHiddenPrivacyMarks| 设置是否隐藏"《默认》" 两边的《》,默认不隐藏| | privacyColor| 设置隐私条款名称颜色| | privacyFont| 设置隐私条款字体的大小| | protocolColor| 设置协议条款协议名称颜色| | appPrivacyLineSpacing| 设置隐私协议的行间距, 默认是1| | appPrivacyWordSpacing| 设置隐私协议的字间距, 默认是0| | progressColor| 设置用户协议界面,进度条颜色|
弹窗模式
| 属性 | 说明 |
| :-------- | -------- |
| popBackgroundColor | 设置窗口模式的背景颜色|
| authWindowWidth | 设置弹窗的宽度,竖屏状态下默认是 300,横屏状态下默认是 335 |
| authWindowHeight | 设置弹窗高度,竖屏状态下默认是335, 横屏状态下默认是300 ⚠️底部半屏弹窗模式的高度可通过修改 authWindowHeight,调整高度 默认335pt|
| closePopImg| 设置弹窗模式下关闭按钮的图片,⚠️(必传)|
| closePopImgWidth| 设置弹窗模式下关闭按钮图片的宽度 默认20*|
| closePopImgHeight| 设置弹窗模式下关闭按钮图片的高度 默认20|
| closePopImgOriginY| 设置关闭按钮距离顶部的距离,默认距离顶部10,距离 = 10 + closePopImgOriginY|
| closePopImgOriginX| 设置关闭按钮距离父视图右边的距离,默认距离为10,距离 = 10 + closePopImgOriginX|
| authWindowCenterOriginY| 设置居中弹窗沿Y轴移动的距离。例如 :authWindowCenterOriginY = 10 表示中间点沿Y轴向下偏移10个像素|
| authWindowCenterOriginX| 设置居中弹窗沿X轴移动的距离。例如 :authWindowCenterOriginX = 10 表示中间点沿X轴向右偏移10个像素|
| popCenterCornerRadius| 设置居中弹窗模式下,弹窗的圆角,默认圆角为16|
| popBottomCornerRadius| 设置底部弹窗模式下,弹窗的圆角,默认圆角为16,注:只可修改顶部左右二边的值|
| isOpenSwipeGesture| 设置底部弹窗模式下,是否开启轻扫手势,向下轻扫关闭弹窗。默认关闭|
| openBackTapGestureRecognizer| 开始弹窗模式下,后面的点击手势,默认关闭|
4. 调起授权页面
代码说明:
quickPassInstance.login(function (data) {
if (!data.success && !data.cancel) {
// TODO: 授权失败处理
} else if (data.cancel) {
// TODO: 用户主动取消授权处理
} else {
// TODO: 授权成功处理,可以进行关闭授权页、服务端验证等
}
})
参数说明:
回调参数说明:
|回调参数|类型|描述| |----|----|----| | data.success|Boolean|授权是否成功| | data.cancel|String|用户是否主动取消授权(android独有)| | data.accessToken|Boolean|如果取号成功则返回运营商授权token,否则无此字段|
5. 关闭授权页面
代码说明:
quickPassInstance.closeAuthController()
6. 本机校验
代码说明:
quickPassInstance.numberVerify(mobileNumber, function (data) {
if (data && data.success) {
// TODO: 调用成功
} else {
// TODO: 调用失败
}
})
参数说明:
入参说明:
|参数|类型|是否必填|默认值|描述| |----|----|--------|------|----| |mobileNumber|String|是|无|本机号码|
回调参数说明:
|回调参数|类型|描述| |----|----|----| | data.success|Boolean|调用是否成功| | data.token|String|如果校验成功返回token,否则无此字段| | data.accessCode|Number|请参考 运营商错误码对照表| | data.errorMsg|String|desc的值为失败的描述信息|