更新记录
1.5.0(2024-06-07) 下载此版本
修复iOS隐私协议弹窗异常问题
1.4.9(2024-06-05) 下载此版本
1.修复iOS缓存异常问题 2.修改Android授权页自定义图标方式 3.Android支持配置登录按钮左右边距 4.Android支持配置隐私区域宽度
1.4.8(2024-04-30) 下载此版本
1.授权页支持导航栏返回图标支持设置间距 2.授权页支持自定义协议未勾选弹窗文本颜色 3.授权页支持配置隐私协议连接符 4.授权页支持配置虚拟键区域是否显示
查看更多平台兼容性
Android | Android CPU类型 | iOS |
---|---|---|
适用版本区间:4.4 - 14.0 | armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 | 适用版本区间:9 - 17 |
原生插件通用使用流程:
- 购买插件,选择该插件绑定的项目。
- 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
- 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
- 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
- 开发完毕后正式云打包
付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios
注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择
号码认证
网易易盾 提供直连三大运营商,一步校验手机号与当前 SIM 卡号一致性。优化注册/登录/支付等场景验证流程
了解更多产品信息或体验试用,请访问 号码认证产品页
更新提醒
- 在使用前请确保已申请到易盾一键登录的业务id
- 建议尽量用本地插件集成的方案,不要用云端插件,因为云端插件无法指定版本
- 从1.4.9版本开始,Android设置授权页自定义图标的方式有变更,请注意
平台支持(兼容性)
Android | iOS |
---|---|
适用版本区间:4.4以上 | 适用版本区间:9以上 |
资源引入/集成
从 dcloud 插件市场下载对应插件放到指定目录 nativeplugins 下,也可以选择直接云端插件打包。导入插件之后一定要自定义基座方可生效,自定义基座说明请参考 https://ask.dcloud.net.cn/article/35115
调用示例
<template>
<view>
<button @click="initLogin('quickLogin')">初始化</button>
<button @click="verifyNumber">授权验证</button>
</view>
</template>
<script>
const ydLogin = uni.requireNativePlugin('YD-Login')
export default {
methods: {
initLogin() {
// 初始化
ydLogin.registerWithBusinessID({
businessId: '从易盾获取业务id',
timeout: 3000
}, (data) => {
// 回调处理
if (data.success) {} else {}
}),
// 预取号
verifyNumber(){
ydLogin.getPhoneNumberCompletion((data) => {
if (data.success) {
// TODO: 预取号成功处理,可以进行调起授权页
ydLogin.cucmctAuthorizeLoginCompletion((data) => {
if (data.success) {
// 授权成功
}
})
}
})
}
}
}
</script>
更多使用场景请参考 demo
SDK 方法说明
在 nvue 中引入插件
const ydLogin = uni.requireNativePlugin('YD-Login')
1. 初始化
初始化一键登录
代码说明:
ydLogin.registerWithBusinessID({
businessId: //'从易盾获取的id',
loginType,
timeout: 3000
}, (data) => {
if (!data.success) {
// TODO: 初始化失败处理
} else {
// TODO: 初始化成功处理,如进行下一步自定义授权页或直接进行预取号
}
})
参数说明:
-
入参说明:
参数 类型 是否必填 默认值 描述 businessId String 是 无 易盾分配的业务 id loginType String 是 无 'quickLogin' 号码认证 或者 'quickPass' 本机校验 debug Boolean 否 false 是否打开日志开关 timeout int 否 3 运营商预取号和授权登录接口的超时时间,单位秒 -
回调参数说明:
回调参数 类型 描述 success Boolean 初始化是否成功
2. 检查网络环境
检测网络状况等条件是否具备进行一键登录
代码说明:
ydLogin.shouldQuickLogin((data) => {
if (!data.success) {
// TODO: 具备一键登录网络环境
} else {
// TODO: 不具备一键登录网络环境
}
})
参数说明:
-
回调参数说明:
回调参数 类型 描述 success Boolean 是否具备一键登录网络环境
3. 预取号
代码说明:
ydLogin.getPhoneNumberCompletion((data) => {
if (!data.success) {
// TODO: 预取号失败处理
} else {
// TODO: 预取号成功处理,可以进行调起授权页
}
})
参数说明:
-
回调参数说明:
回调参数 类型 描述 success Boolean 预取号是否成功 token String 易盾token,用于校验 msg String 预取号异常信息,用于success返回false场景
4. 自定义授权页面
在工程目录下添加json配置文件,可配置项参考下面说明
代码说明:
ydLogin.setCustomView(config, (data) => {
const platform = uni.getSystemInfoSync().platform
if (platform === 'ios') {
// TODO:iOS事件回调处理业务
} else if (platform === 'android') {
// TODO: android事件回调处理业务
}
})
参数说明:
-
入参说明:
参数 类型 是否必填 默认值 描述 config String 是 无 自定义配置项json字符串
config 可配置项说明: android版
开发者不得通过任何技术手段,将授权页面的隐私栏、手机掩码号、供应商品牌内容隐藏、覆盖
网易易盾与运营商会对应用授权页面进行审查,若发现上述违规行为,网易易盾有权将您的一键登录功能下线
所有使用到的图标请放置在nativeResources/android/res/drawable目录下(命名只支持a-z、0-9和下划线),如果没有请在工程目录下创建,config配置文件中只配置图标的名字
状态栏
配置项 | 说明 |
---|---|
statusBarColor:String | 设置状态栏背景颜色,十六进制RGB值,如 "#ff0000" |
isStatusBarDarkColor:boolean | 设置状态栏字体图标颜色是否为暗色(黑色) |
导航栏
配置项 | 说明 |
---|---|
navBackIcon:String | 导航栏图标,这里配置图标名字 |
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 图标,这里配置图标名字 |
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 | 设置登录按钮背景图标,这里配置图标名字 |
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 | 设置隐私栏复选框选中时的图片资源,这里配置图标名字 |
unCheckedImageName:String | 设置隐私栏复选框未选中时的图片资源,这里配置图标名字 |
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 页面导航栏返回图标,这里配置图标名字 |
protocolNavColor:String | 设置协议Web页面导航栏颜色 |
protocolNavBackIconMargin:int | 设置协议Web页面导航栏返回按钮距离左边距离 |
protocolNavHeight:int | 设置协议 Web 页面导航栏高度 |
protocolNavTitleSize:int | 设置协议Web页面导航栏标题大小,单位 px |
protocolNavTitleDpSize:int | 设置协议 Web 页面导航栏标题大小,单位 dp |
protocolNavBackIconWidth:int | 设置协议 Web 页面导航栏返回按钮宽度,单位 dp |
protocolNavBackIconHeight:int | 设置协议 Web 页面导航栏返回按钮高度,单位 dp |
其他
配置项 | 说明 |
---|---|
backgroundImage:String | 设置登录页面背景,这里配置图片名字 |
backgroundGif:String | 设置登录页面背景为 Gif,这里配置图片名字 |
backgroundVideo:String | 设置登录页面背景为视频地址,如http://xxx |
backgroundVideoImage:String | 设置登录页面背景为视频封面地址,如http://xxx |
enterAnimation:String | 页面进入动画,默认支持了yd_dialog_fade_in,配合dialog模式淡入 |
exitAnimation:String | 页面退出动画,默认支持了yd_dialog_fade_out,配合dialog模式淡出 |
isShowLoading:boolean | 设置授权登录页是否显示loading View |
isBackPressedAvailable:boolean | 授权登录页物理返回键是否可用 |
isVirtualButtonHidden:boolean | 是否隐藏虚拟键 |
isLandscape:boolean | 是否横屏 |
isDialogMode: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:int | 协议未勾选弹窗文本字体大小 |
自定义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 | 控件文本 |
∟ font:int | 控件文本大小,单位 sp |
∟ textColor:String | 控件文本颜色,十六进制颜色码 |
∟ clickable:boolean | 控件是否可点击 |
∟ backgroundColor:String | 控件背景颜色,十六进制颜色码 |
∟ backgroundImgPath:String | 控件背景图片,这里配置图片名字 |
∟ positionType:int | 添加控件的位置类型,1表示位于导航栏部分,0表示位于导航栏下方的body部分,默认为0 |
config 可配置项说明: iOS版
设计规范概览
开发者不得通过任何技术手段,将授权页面的隐私栏、手机掩码号、供应商品牌内容隐藏、覆盖
网易易盾与运营商会对应用授权页面进行审查,若发现上述违规行为,网易易盾有权将您的一键登录功能下线
基础配置
属性 | 说明 |
---|---|
backgroundColor | 设置授权页面背景颜色 |
authWindowPop | 设置窗口类型 0 表示全屏模式 1 表示窗口在屏幕的中间 2 表示窗口在屏幕的底部(不支持横屏) |
faceOrientation | 设置授权页面方向 0 表示竖屏 1 表示左横屏 2 表示右横屏 3 表示左右横屏 4 表示屏幕全旋转 |
bgImage | 设置授权转背景图片,例如 :"图片名.后缀" |
hidesBottomBarWhenPushed | 进入下一个页面前,将该属性设置为YES即可隐藏TabBar,默认不隐藏 |
statusBarStyle | 授权页状态栏的颜色 0:黑色,1:白色 |
转场动画
属性 | 说明 |
---|---|
modalTransitionStyle | 设置授权转场动画 0 表示下推 1 表示翻转 2 表示淡出 |
自定义控件
"widgets": [
{
"type": "UIButton",
"UIButtonType": 0,
"image": "static/weixin.png",
"title": "",
"titleColor": "#000000",
"titleFont": 12,
"cornerRadius": 20,
"action": "handleCustomEvent1",
"frame": {"mainScreenLeftDistance":100,"mainScreenTopDistance":360,"width":32,"height":32},
"backgroundImage":"static/yidun_logo.png"
},
{
"type": "UIButton",
"UIButtonType": 0,
"image": "static/qq.png",
"title": "",
"titleColor": "#FFFFFF",
"titleFont": 12,
"cornerRadius": 20,
"action": "handleCustomEvent2",
"frame": {"mainScreenCenterXWithLeftDistance":0,"mainScreenTopDistance":360,"width":32,"height":32},
"backgroundImage": "static/yidun_logo.png"
},
{
"type": "UIButton",
"UIButtonType": 0,
"image": "static/weibo.png",
"title": "",
"titleColor": "#FFFFFF",
"titleFont": 12,
"cornerRadius": 20,
"action": "handleCustomEvent3",
"frame": {"mainScreenLeftDistance":100,"mainScreenRightDistance":360,"mainScreenTopDistance":32,"height":32},
"backgroundImage": "static/yidun_logo.png"
},
{
"type": "UILabel",
"textColor": "#FFFFFF",
"font": 15,
"cornerRadius": 20,
"action": "handleCustomLabel",
"text": "其他登录方式",
"textAlignment": 1,
"frame": {"mainScreenLeftDistance":0,"mainScreenRightDistance":310,"mainScreenBottomDistance":200,"height":32}
}
]
配置项 | 说明 |
---|---|
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 表示不重复播放 |
背景设置 Gif
属性 | 说明 |
---|---|
animationRepeatCount | 设置动画重复的次数 -1无限重复 |
animationDuration | 设置动画的时长 |
导航栏
属性 | 说明 | |
---|---|---|
navBarHidden | 导航栏是否隐藏 | |
navBgColor | 设置导航栏背景颜色 | |
navText | 设置导航栏标题 | |
navTextFont | 设置导航栏标题字体大小 | |
navTextColor | 设置导航栏标题字体颜色 | |
navTextHidden | 设置导航栏标题是否隐藏,默认不隐藏 | |
navReturnImg | 设置导航返回图标,例如:"back-1" | |
navReturnImgLeftMargin | 设置导航返回图标距离屏幕左边的距离,默认0 | |
navReturnImgBottomMargin | 设置导航返回图标距离屏幕底部的距离,默认0 | |
navReturnImgWidth | 设置导航返回图标的宽度,默认44 | |
navReturnImgHeight | 设置导航返回图标的高度 , 默认44 |
应用 Logo
属性 | 说明 |
---|---|
logoIconName | 设置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 |
numberCornerRadius | 设置手机号码的控件的圆角 |
numberLeftContent | 设置手机号码的左边描述内容,默认为空 |
numberRightContent | 设置手机号码的右边描述内容,默认为空色 |
认证品牌
属性 | 说明 |
---|---|
brandColor | 设置认证服务品牌文字颜色 |
brandBackgroundColor | 设置认证服务品牌背景颜色 |
brandFont | 设置认证服务品牌文字字体 默认12 |
brandWidth | 设置认证服务品牌的宽度, 默认200 |
brandHeight | 设置认证服务品牌的高度, 默认16 |
brandLogoWidth | 设置认证服务品牌的宽度 |
brandLogoHeight | 设置认证服务品牌的高度 |
brandLogoOffsetMargin | 认证服务品牌x轴的偏移量 |
brandOffsetX | 设置认证服务品牌X偏移量 ,brandOffsetX = 0居中显示 |
brandOffsetTopY | 设置认证服务品牌Y偏移量, brandOffsetTopY为距离屏幕顶部的距离 ,默认为150 |
brandHidden | 设置是否隐藏认证服务品牌,默认显示 |
登录按钮
属性 | 说明 |
---|---|
logBtnText | 设置登录按钮文本 |
loginBtnTextSize | 设置登录按钮字号 |
logBtnTextColor | 设置登录按钮文本颜色 |
logBtnOffsetTopY | 设置登录按钮Y偏移量 ,logBtnOffsetTopY为距离屏幕顶部的距离 ,默认为200 |
logBtnRadius | 设置登录按钮圆角,默认8 |
logBtnUsableBGColor | 设置登录按钮背景颜色 |
logBtnEnableImg | 设置登录按钮可用状态下的背景图片 |
logBtnHighlightedImg | 登录按钮高亮状态下的背景图片 |
logBtnOriginLeft | 登录按钮的左边距 ,横屏默认40 ,竖屏默认260 |
logBtnOriginRight | 设置登录按钮的左边距,横屏默认40 ,竖屏默认260 |
logBtnHeight | 设置登录按钮的高度,默认44 |
隐私协议
若勾选框需要展示,请务必设置勾选框的选中态图片与未选中态图片 协议未勾选时,登录按钮是否可点击可以自定义设置,弹窗提示的样式也可以自定义
属性 | 说明 |
---|---|
unCheckedImageName | 图片名 |
checkedImageName | 图片名 |
checkboxWH | 设置复选框大小(只能正方形) ,默认 12 |
privacyState | 设置隐私条款check框默认状态 |
checkBoxAlignment | 设置隐私条款check框位置 0 表示相对协议顶对齐 1 表示相对协议中对齐 2 表示相对协议下对齐 默认顶对齐 |
checkedHidden | 隐藏复选框 |
checkBoxMargin | 设置复选框距离隐私条款的边距 默认 8 |
appPrivacyOriginLeft | 设置隐私条款距离屏幕左边的距离 默认 60 |
appPrivacyOriginRight | 设置隐私条款距离屏幕右边的距离 默认 40 |
appPrivacyOriginBottomMargin | 设置隐私条款距离屏幕的距离 默认 40 |
privacyNavReturnImg | 设置用户协议界面,导航栏返回图标,默认用导航栏返回图标 |
appPrivacyText | 设置隐私的内容模板:全句可自定义但必须保留"《默认》"字段表明SDK默认协议,否则设置不生效。必设置项(参考SDK的demo)appPrivacyText设置内容:登录并同意《默认》和易盾协议1、网易协议2登录并支持一键登录,展示:登录并同意中国移动条款协议和易盾协议1、网易协议2登录并支持一键登录 |
appFPrivacyText | 设置开发者隐私条款协议名称(第一个协议) |
appFPrivacyURL | 设置开发者隐私条款协议url(第一个协议) |
appSPrivacyText | 设置开发者隐私条款协议名称(第二个协议) |
appSPrivacyURL | 设置开发者隐私条款协议url(第二个协议) |
appTPrivacyText | 设置开发者隐私条款协议名称(第三个协议) |
appTPrivacyURL | 设置开发者隐私条款协议url(第三个协议) |
appFourPrivacyText | 设置开发者隐私条款协议名称(第四个协议) |
appFourPrivacyURL | 设置开发者隐私条款协议url(第四个协议) |
appPrivacyAlignment | 0 : 隐私条款居左显示, 1: 居中显示, 2 :居右显示 |
appPrivacyOriginLeftMargin | 隐私条款距离屏幕左边的距离 |
shouldHiddenPrivacyMarks | 设置是否隐藏"《默认》" 两边的《》,默认不隐藏 |
privacyColor | 设置隐私条款名称颜色 |
privacyFont | 设置隐私条款字体的大小 |
protocolColor | 设置协议条款协议名称颜色 |
showPrivacyDialog | 0 显示自定义提示框;1 显示系统提示框 ;2 隐藏提示框 |
弹窗模式
属性 | 说明 |
---|---|
popBackgroundColor | 弹窗模式的背景颜色 |
scaleW | 自定义窗口宽度 |
scaleH | 自定义窗口高度 |
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 | 始弹窗模式下,后面的点击手势,默认关闭 |
-
回调参数说明:
callback -- 授权页事件回调(含生命周期钩子) // 返回参数 // iOS版本 data: { action: 事件名称、生命周期名称 checked: 协议复选框值,仅在复选框事件和登录按钮点击事件中存在 } // android版本 data: { viewId: 自定义viewid lifecycle: 生命周期名称 clickViewType: 内置组件事件触发目标 isCheckboxChecked: 协议复选框的值,仅在复选框事件和登录按钮点击事件中存在 }
action值说明:
-
iOS授权页生命周期action:
- authViewDidLoad -- 加载授权页
- authViewWillAppear -- 授权页已经出现
- authViewWillDisappear -- 授权页将要消失
- authViewDidDisappear -- 授权页已经消失
- authViewDealloc -- 授权页销毁
-
页面默认组件点击事件action
- loginAction -- 登录按钮点击事件(含checked: 0/1)
- checkedAction -- 复选框事件(含checked: 0/1)
- appDPrivacy -- 默认协议点击事件
- appFPrivacy -- 第一个协议点击事件
- appSPrivacy -- 第二个协议点击事件
lifecycle取值说明:
- onCreate -- 页面创建
- onStart -- 页面已开始活动
- onResume -- 页面展示
- onPause -- 页面非活动状态
- onStop -- 页面已停止
- onDestroy -- 页面销毁
clickViewType取值说明:
- privacy -- 隐私协议点击事件
- checkbox -- 复选框点击事件(含isCheckboxChecked: 0/1)
- loginButton -- 登录按钮点击事件(含isCheckboxChecked: 0/1)
- leftBackButton -- 左上角返回按钮点击事件
5. 调起授权页面
代码说明:
ydLogin.cucmctAuthorizeLoginCompletion((data) => {
if (!data.success && !data.cancel) {
// TODO: 授权失败处理
} else if (data.cancel) {
// TODO: 用户主动取消授权处理
} else {
// TODO: 授权成功处理,可以进行关闭授权页、服务端验证等
}
})
参数说明:
-
回调参数说明:
回调参数 类型 描述 success Boolean 授权是否成功 cancel Boolean 用户是否主动取消授权(android独有) accessToken String 授权token
6. 自动登录
注意:该方法仅限iOS
代码说明:
ydLogin.authLoginButtonClick()
7. 设置协议复选框
代码说明:
ydLogin.checkedSelected(checked)
参数说明:
-
入参说明:
参数 类型 是否必填 默认值 描述 checked Boolean 是 无 true:复选框勾选,false:复选框取消勾选
8. 清除缓存
注意:该方法仅限Android
代码说明:
ydLogin.clearScripCache()
9. 关闭授权页
插件内部不会主动关闭授权页,请在cucmctAuthorizeLoginCompletion回调中主动调用该函数关闭
代码说明:
ydLogin.closeAuthController()
10. 本机校验
用户输入手机号码后,自动校验与当前本机卡号的一致性,无需发送短信验证码
代码说明:
ydLogin.numberVerify(mobileNumber, (data) => {
if (data && data.success) {
console.log(data.token, data.accessCode)
} else {
console.log(data.token, data.errorMsg)
}
})
参数说明:
-
入参说明:
参数 类型 是否必填 默认值 描述 mobileNumber String 是 无 手机号 -
回调参数说明:
回调参数 类型 描述 success Boolean 调用是否成功 token String 易盾 token accessCode String 运营商授权码 errorMsg String 出现错误时返回错误详情