UNPKG

jverification-react-native

Version:

React Native JVerification component for Android and iOS

508 lines (432 loc) 30.8 kB
# JVerification React Native SDK 极光认证 React Native SDK,提供一键登录和短信验证码登录功能。 ## 常量 - `LoginEvent`: 登录事件 - `SmsLoginEvent`: 短信登录事件 - `UnCheckBox`: iOS 未选中隐私协议 CheckBox 点击登录按钮的回调事件 ## 方法 ### setLoggerEnable 设置调试模式,默认关闭状态。该接口需在 init 接口之前调用,避免出现部分日志没打印的情况。 ```typescript static setLoggerEnable(enable: boolean): void ``` ### init SDK 初始化。 ```typescript static init(params: { time: number, // 初始化超时时间,单位毫秒,合法范围是(0,30000],推荐设置为5000-10000,默认值为10000 appkey: string, // 极光系统应用唯一标识,必填 (仅ios) channel?: string, // 应用发布渠道,可选 (仅ios) advertisingId?: string, // 广告标识符,可选 (仅ios) isProduction?: boolean // 是否生产环境。如果为开发状态,设置为false;如果为生产状态,应改为true。默认为false,可选 (仅ios) }, callback: (result: {code: number, content: string}) => void): void ``` ### isInitSuccess 获取 SDK 初始化是否成功标识。 ```typescript static isInitSuccess(callback: (result: {enable: boolean}) => void): void ``` ### checkLoginEnable SDK 判断网络环境是否支持-是否开启严格模式。 ```typescript static checkLoginEnable(strictMode: boolean, callback: (result: {enable: boolean}) => void): void ``` ### getToken SDK 获取号码认证 token。 ```typescript static getToken(time: number, callback: (result: { code: number, // 返回码,2000代表获取成功,其他为失败,详见错误码描述 content: string, // 成功时为token,可用于调用验证手机号接口。token有效期为1分钟,超过时效需要重新获取才能使用。失败时为失败信息 operator: string // 成功时为对应运营商,CM代表中国移动,CU代表中国联通,CT代表中国电信。失败时可能为null }) => void): void ``` 参数说明: - `time`: 超时时间(毫秒),有效取值范围(0,10000],若小于等于0则取默认值5000.大于10000则取10000.为保证获取token的成功率,建议设置为3000-5000ms. ### preLogin SDK 获取预取号 token。 ```typescript static preLogin(time: number, callback: (result: { code: number, // 返回码,7000代表获取成功,其他为失败,详见错误码描述 content: string // 调用结果信息描述 }) => void): void ``` 参数说明: - `time`: 超时时间(毫秒),有效取值范围(0,10000],若小于等于0则取默认值5000.大于10000则取10000, 为保证预取号的成功率,建议设置为3000-5000ms ### clearPreLoginCache SDK 清除预取号缓存。 ```typescript static clearPreLoginCache(): void ``` ### login SDK 请求授权一键登录。 ```typescript static login(enable: boolean, time: number, callback: (result: { code: number, // 返回码,6000代表获取成功,其他为失败,详见错误码描述 content: string // 成功时为logintoken,用于置换手机号 }) => void): void ``` 参数说明: - `enable`: 是否自动关闭授权页,true - 是,false - 否;若此字段设置为false,请在收到一键登录回调后调用SDK提供的关闭授权页面方法 - `time`: 超时时间(毫秒),有效取值范围(0,10000],若小于等于0则取默认值5000.大于10000则取10000.为保证获取token的成功率,建议设置为3000-5000ms. ### dismissLoginPage SDK 关闭授权页面。 ```typescript static dismissLoginPage(): void ``` ### smsLogin 拉起短信登录页。 ```typescript static smsLogin(enable: boolean, time: number, callback: (result: { code: number, // 返回码,4000代表获取成功,其他为失败,详见错误码描述 content: string, // 说明信息 phoneNumber: string // 成功时为手机号 }) => void): void ``` 参数说明: - `enable`: 是否自动关闭授权页,true - 是,false - 否;若此字段设置为false,请在收到一键登录回调后调用SDK提供的关闭授权页面方法 - `time`: 超时时间(毫秒), 有效取值范围(5000,30000], 若小于等于 5000 或大于 30000 则取默认值 10000. 推荐设置为 5001-10000. ### addLoginCustomConfig 设置一键登录页面样式。所有配置项均为可选,需要在 login 前调用生效。 ```typescript static addLoginCustomConfig(customConfigParams: { // 基础配置 backgroundImage?: string, // 背景图 backgroundGifImage?: string, // 背景gif backgroundVideo?: string, // 背景视频 backgroundVideoPlaceHolderImage?: string, // 背景视频默认图 appLanguageType?: string, // 语言 0.中文简体(默认) 1.中文繁体 2.英文 // 状态栏配置 statusBarTransparent?: boolean, // 状态栏是否透明 statusBarHidden?: boolean, // 状态栏是否隐藏 statusBarMode?: string, // 状态栏模式 light,dark // 导航栏配置 navHidden?: boolean, // 导航栏是否隐藏 navColor?: number, // 导航栏颜色 navTitle?: string, // 导航栏标题 navTitleSize?: number, // 导航栏标题文字字体大小(单位:sp) navTitleColor?: number, // 导航栏标题文字颜色 navReturnHidden?: boolean, // 导航栏返回按钮是否隐藏 navTransparent?: boolean, // 导航栏是否透明 navReturnImage?: string, // 导航栏左侧返回按钮图标 navReturnX?: number, // 导航栏返回按钮距屏幕左侧偏移 navReturnY?: number, // 导航栏返回按钮距屏幕右侧偏移 navReturnW?: number, // 导航栏返回按钮宽度 (仅Android) navReturnH?: number, // 导航栏返回按钮高度 (仅Android) // Logo配置 logoHidden?: boolean, // logo是否隐藏 logoImage?: string, // logo(android默认为应用图标;ios默认无) logoX?: number, // logo相对于屏幕左边x轴偏移 logoY?: number, // logo相对于标题栏下边缘y偏移 logoW?: number, // logo宽 logoH?: number, // logo高 // 号码栏配置 numberSize?: number, // 手机号码字体大小(单位:sp) numberColor?: number, // 手机号码字体颜色 numberX?: number, // 号码栏相对于屏幕左边x轴偏移 numberY?: number, // 号码栏相对于标题栏下边缘y偏移 numberW?: number, // 号码栏宽度 numberH?: number, // 号码栏高度 // Slogan配置 sloganHidden?: boolean, // slogan是否隐藏 sloganTextSize?: number, // slogan字体大小 sloganTextColor?: number, // slogan文字颜色 sloganX?: number, // slogan相对于屏幕左边x轴偏移 sloganY?: number, // slogan相对于标题栏下边缘y偏移 sloganW?: number, // slogan宽度 (仅iOS) sloganH?: number, // slogan高度 (仅iOS) // 登录按钮配置 loginBtnText?: string, // 登录按钮文字 loginBtnTextSize?: number, // 登录按钮字体大小 loginBtnTextColor?: number, // 登录按钮文字颜色 loginBtnImage?: string, // 登录按钮selector选择样式 (仅android) loginBtnNormalImage?: string, // 登录按钮正常图片 (仅ios,三个同时设置生效) loginBtnDisabledImage?: string, // 登录按钮失效图片 (仅ios,三个同时设置生效) loginBtnSelectedImage?: string, // 登录按钮按下图片 (仅ios,三个同时设置生效) loginBtnX?: number, // 登录按钮相对于屏幕左边x轴偏移 loginBtnY?: number, // 登录按钮相对于标题栏下边缘y偏移 loginBtnW?: number, // 登录按钮宽度 loginBtnH?: number, // 登录按钮高度 // 隐私条款配置 privacyOne?: string[], // [隐私条款一名称,隐私条款一链接] privacyTwo?: string[], // [隐私条款二名称,隐私条款二链接] privacyNameAndUrlBeanList?: Array<{ // 隐私条款配置数组 name: string, // 条款名称 url: string, // 条款链接 separator: string // 分隔符 }>, privacyColor?: number[], // [隐私条款名称颜色,隐私条款链接颜色] privacyText?: string[], // [隐私条款名称外的文字,隐私条款名称外的文字,隐私条款名称外的文字,隐私条款名称外的文字] privacyTextSize?: number, // 隐私条款文字字体大小 privacyTextGravityMode?: string, // 隐私条款文本对齐方式,目前仅支持 left、center privacyBookSymbolEnable?: boolean, // 隐私条款运营商协议名是否加书名号 privacyX?: number, // 隐私条款相对于屏幕左边x轴偏移 privacyY?: number, // 隐私条款相对于页面下边缘y偏移 privacyW?: number, // 隐私条款宽度 privacyH?: number, // 隐私条款高度 textVerAlignment?: string, // 设置条款文字是否垂直居中对齐(默认居中对齐) 0是top 1是m 2是b only iOS openPrivacyInBrowser?: boolean, // 是否在浏览器中打开隐私条款 默认是false // 隐私条款复选框配置 privacyCheckboxHidden?: boolean, // 隐私条款checkbox是否隐藏 privacyCheckEnable?: boolean, // 隐私条款默认选中状态。默认不选中 privacyCheckedImage?: string, // 隐私条款复选框选中图片 privacyUncheckedImage?: string, // 隐私条款复选框未选中图片 privacyCheckboxSize?: number, // 设置隐私条款checkbox尺寸 默认是10 isAlertPrivacyVC?: boolean, // 是否在未勾选隐私协议的情况下 弹窗提示窗口 iOS enablePrivacyCheckDialog?: boolean, // 是否在未勾选隐私协议的情况下 弹窗提示窗口 Android // 隐私条款Web页面配置 privacyWebNavColor?: number, // 协议展示web页面导航栏背景颜色 privacyWebNavTitle?: string, // 协议页导航栏标题(仅iOS) privacyWebNavTitleSize?: number, // 协议展示web页面导航栏标题文字大小 privacyWebNavTitleColor?: number, // 协议展示web页面导航栏标题文字颜色 privacyWebNavReturnImage?: string, // 协议展示web页面导航栏返回按钮图标 // iOS 二次弹窗配置 agreementAlertViewCornerRadius?: number, // 协议二次弹窗的圆角 agreementAlertViewBackgroundColor?: number, // 协议二次弹窗背景颜色 agreementAlertViewBackgroundImgPath?: string, // 协议二次弹窗背景图片 agreementAlertViewTitleText?: string, // 协议二次弹窗标题文本 agreementAlertViewTitleTexSize?: number, // 协议二次弹窗标题文本样式 agreementAlertViewTitleTextColor?: number, // 协议二次弹窗标题文本颜色 agreementAlertViewContentTextAlignment?: string, // 协议二次弹窗内容文本对齐方式 agreementAlertViewContentTextFontSize?: number, // 协议二次弹窗内容文本字体大小 agreementAlertViewLogBtnText?: string, // 协议二次弹窗登录按钮文本 agreementAlertViewLogBtnTextFontSize?: number, // 协议二次弹窗登录按钮文本字体大小 agreementAlertViewLoginBtnNormalImagePath?: string, // 协议二次弹窗登录按钮背景图片 - 激活状态的图片 agreementAlertViewLoginBtnPressedImagePath?: string, // 协议二次弹窗登录按钮背景图片 - 高亮状态的图片 agreementAlertViewLoginBtnUnableImagePath?: string, // 协议二次弹窗登录按钮背景图片 - 失效状态的图片 agreementAlertViewLogBtnTextColor?: number, // 协议二次弹窗登录按钮文本颜色 agreementAlertViewUIFrames?: { // 协议二次弹窗各控件的frame设置 superViewFrame: [number, number, number, number], alertViewFrame: [number, number, number, number], titleFrame: [number, number, number, number], contentFrame: [number, number, number, number], buttonFrame: [number, number, number, number] }, // Android 二次弹窗配置 privacyCheckDialogGravityModeCenter?: boolean, // 协议的二次弹窗对齐方式 目前仅支持 bottom、center setPrivacyCheckDialogOffsetX?: number, // 隐私二次弹窗相对于屏幕左边x轴偏移 setPrivacyCheckDialogOffsetY?: number, // 隐私二次弹窗相对于屏幕左边x轴偏移 setPrivacyCheckDialogWidth?: number, // 隐私二次弹窗 宽 setPrivacyCheckDialogHeight?: number, // 隐私二次弹窗 高 setPrivacyCheckDialogTitleText?: string, // 协议二次弹窗标题 setPrivacyCheckDialogTitleTextSize?: number, // 协议二次弹窗标题字号 setPrivacyCheckDialogTitleTextColor?: number, // 协议二次弹窗标题文字颜色 setPrivacyCheckDialogContentTextGravity?: string, // 协议的二次弹窗对齐方式 目前仅支持 left、center setPrivacyCheckDialogContentTextSize?: number, // 协议的二次弹窗文字大小 setPrivacyCheckDialogLogBtnMarginL?: number, // 隐私二次弹窗相对于屏幕左边x轴偏移 setPrivacyCheckDialogLogBtnMarginT?: number, // 协议二次弹窗相对于屏幕左边y轴偏移 setPrivacyCheckDialogLogBtnMarginB?: number, // 协议二次弹窗相对于屏幕左边b轴偏移 setPrivacyCheckDialogLogBtnMarginR?: number, // 协议二次弹窗相对于屏幕右边x轴偏移 setPrivacyCheckDialogLogBtnImgPath?: string, // 协议的二次弹窗按钮背景图片 setPrivacyCheckDialoglogBtnTextColor?: number, // 协议二次弹窗按钮字体颜色 setPrivacyCheckDialogLogBtnWidth?: number, // 隐私二次弹窗 登录按钮宽 setPrivacyCheckDialogLogBtnHeight?: number, // 隐私二次弹窗 登录按钮高 setPrivacyCheckDialogLogBtnText?: string, // 协议的二次弹窗按钮标题字体 setPrivacyCheckDialogContentTextPaddingL?: number, // 隐私协议弹窗内容文字左边距 setPrivacyCheckDialogContentTextPaddingT?: number, // 隐私协议弹窗内容文字上边距 setPrivacyCheckDialogContentTextPaddingR?: number, // 隐私协议弹窗内容文字右边距 setPrivacyCheckDialogContentTextPaddingB?: number, // 隐私协议弹窗内容文字下边距 // 短信登录UI配置 smsUIConfig?: { smsAuthPageBackgroundImagePath?: string, // 登录界面背景图片 smsNavText?: string, // 导航栏标题文字 smsNavTextColor?: number, // 导航栏标题颜色 only iOS smsNavTextBold?: boolean, // 导航栏标题是否加粗 only iOS smsNavTextSize?: number, // 导航栏标题大小 only iOS smsSloganTextSize?: number, // 设置slogan字体大小 isSmsSloganHidden?: boolean, // 设置slogan字体是否隐藏 only android isSmsSloganTextBold?: boolean, // 设置slogan字体是否加粗 only android smsSloganOffsetX?: number, // 设置slogan相对于屏幕左边x轴偏移 smsSloganOffsetY?: number, // 设置slogan相对于标题栏下边缘y偏移 smsSloganOffsetBottomY?: number, // 设置slogan相对于屏幕底部下边缘y轴偏移 smsSloganWidth?: number, // 设置slogan宽度 only iOS smsSloganHeight?: number, // 设置slogan高度 only iOS smsSloganTextColor?: number, // 设置移动slogan文字颜色 smsLogoWidth?: number, // 设置logo宽度(单位:dp) smsLogoHeight?: number, // 设置logo高度(单位:dp) smsLogoOffsetX?: number, // 设置logo相对于屏幕左边x轴偏移 smsLogoOffsetY?: number, // 设置logo相对于标题栏下边缘y偏移 smsLogoOffsetBottomY?: number, // 设置logo相对于屏幕底部y轴偏移 isSmsLogoHidden?: boolean, // 隐藏logo smsLogoResName?: string, // 设置logo图片 smsPhoneTextViewOffsetX?: number, // 设置号码标题相对于屏幕左边x轴偏移 only android smsPhoneTextViewOffsetY?: number, // 设置号码标题相对于标题栏下边缘y偏移 only android smsPhoneTextViewTextSize?: number, // 设置号码标题字体大小 only android smsPhoneTextViewTextColor?: number, // 设置号码标题文字颜色 only android smsPhoneInputViewOffsetX?: number, // 设置号码输入框相对于屏幕左边x轴偏移 smsPhoneInputViewOffsetY?: number, // 设置号码输入框相对于屏幕底部y轴偏移 smsPhoneInputViewWidth?: number, // 设置号码输入框宽度 smsPhoneInputViewHeight?: number, // 设置号码输入框高度 smsPhoneInputViewTextColor?: number, // 设置手机号码输入框字体颜色 smsPhoneInputViewTextSize?: number, // 设置手机号码输入框字体大小 smsPhoneInputViewPlaceholderText?: string, // 设置手机号码输入框提示词 only iOS smsVerifyCodeTextViewOffsetX?: number, // 设置验证码标题相对于屏幕左边x轴偏移 only android smsVerifyCodeTextViewOffsetY?: number, // 设置验证码标题相对于标题栏下边缘y偏移 only android smsVerifyCodeTextViewTextSize?: number, // 设置验证码标题字体大小 only android smsVerifyCodeTextViewTextColor?: number, // 设置验证码标题文字颜色 only android smsVerifyCodeEditTextViewTextSize?: number, // 设置验证码输入框字体大小 smsVerifyCodeEditTextViewTextColor?: number, // 设置验证码输入框字体颜色 smsVerifyCodeEditTextViewPlaceholderText?: string, // 设置验证码输入框提示词 only iOS smsVerifyCodeEditTextViewOffsetX?: number, // 设置验证码输入框相对于屏幕左边x轴偏移 smsVerifyCodeEditTextViewOffsetY?: number, // 设置验证码输入框相对于标题栏下边缘y偏移 smsVerifyCodeEditTextViewOffsetR?: number, // 设置验证码输入框相对于屏幕右边偏移 smsVerifyCodeEditTextViewWidth?: number, // 设置验证码输入框宽度 smsVerifyCodeEditTextViewHeight?: number, // 设置验证码输入框高度 smsGetVerifyCodeTextViewOffsetX?: number, // 设置获取验证码按钮相对于屏幕左边x轴偏移 smsGetVerifyCodeTextViewOffsetY?: number, // 设置获取验证码按钮相对于标题栏下边缘y偏移 smsGetVerifyCodeTextViewTextSize?: number, // 设置获取验证码按钮字体大小 smsGetVerifyCodeTextViewTextColor?: number, // 设置获取验证码按钮文字颜色 smsGetVerifyCodeTextViewOffsetR?: number, // 设置获取验证码按钮相对于屏幕右边偏移 smsGetVerifyCodeBtnWidth?: number, // 设置获取验证码按钮宽度 only iOS smsGetVerifyCodeBtnHeight?: number, // 设置获取验证码按钮高度 only iOS smsGetVerifyCodeBtnCornerRadius?: number, // 设置获取验证码按钮圆角度数 only iOS smsGetVerifyCodeBtnBackgroundPath?: string, // 设置获取验证码按钮图片 smsGetVerifyCodeBtnBackgroundPaths?: string[], // 设置获取验证码按钮图片[激活状态,失效状态,高亮状态] only iOS smsGetVerifyCodeBtnText?: string, // 设置获取验证码按钮文字 only iOS smsLogBtnOffsetX?: number, // 设置登录按钮相对于屏幕左边x轴偏移 smsLogBtnOffsetY?: number, // 设置登录按钮相对于标题栏下边缘y偏移 smsLogBtnWidth?: number, // 设置登录按钮宽度 smsLogBtnHeight?: number, // 设置登录按钮高度 smsLogBtnTextSize?: number, // 设置登录按钮字体大小 smsLogBtnBottomOffsetY?: number, // 设置登录按钮相对屏幕底部y轴偏移 smsLogBtnText?: string, // 设置登录按钮文字 smsLogBtnTextColor?: number, // 设置登录按钮文字颜色 isSmsLogBtnTextBold?: boolean, // 设置登录按钮字体是否加粗 smsLogBtnBackgroundPath?: string, // 设置授权登录按钮图片 smsLogBtnBackgroundPaths?: string, // 设置授权登录按钮图片[激活状态,失效状态,高亮状态] only iOS smsFirstSeperLineOffsetX?: number, // 第一分割线相对于屏幕左边x轴偏移 only android smsFirstSeperLineOffsetY?: number, // 第一分割线相对于标题栏下边缘y偏移 only android smsFirstSeperLineOffsetR?: number, // 第一分割线相对于屏幕右边偏移 only android smsFirstSeperLineColor?: number, // 第一分割线颜色 only android smsSecondSeperLineOffsetX?: number, // 第二分割线相对于屏幕左边x轴偏移 only android smsSecondSeperLineOffsetY?: number, // 第二分割线相对于标题栏下边缘y偏移 only android smsSecondSeperLineOffsetR?: number, // 第二分割线相对于屏幕右边偏移 only android smsSecondSeperLineColor?: number, // 第二分割线颜色 only android isSmsPrivacyTextGravityCenter?: boolean, // 设置隐私条款文字是否居中对齐(默认左对齐) smsPrivacyColor?: number[], // 设置隐私条款名称颜色[基础文字颜色,协议文字颜色] only iOS smsPrivacyTextVerAlignment?: number, // 设置隐私条款垂直对齐方式 0:top 1:middle 2:bottom only iOS smsPrivacyOffsetX?: number, // 协议相对于屏幕左边x轴偏移 smsPrivacyOffsetY?: number, // 协议相对于底部y偏移 smsPrivacyTopOffsetY?: number, // 协议相对于标题栏下边缘y偏移 smsPrivacyWidth?: number, // 协议宽度 only iOS smsPrivacyHeight?: number, // 协议高度 only iOS smsPrivacyMarginL?: number, // 设置协议相对于登录页左边的间距 only android smsPrivacyMarginR?: number, // 设置协议相对于登录页右边的间距 only android smsPrivacyMarginT?: number, // 设置协议相对于登录页顶部的间距 only android smsPrivacyMarginB?: number, // 设置协议相对于登录页底部的间距 only android smsPrivacyCheckboxSize?: number, // 设置隐私条款checkbox尺寸 smsPrivacyCheckboxOffsetX?: number, // 设置隐私条款checkbox相对于屏幕左边x轴偏移 smsPrivacyCheckboxOffsetY?: number, // 设置隐私条款checkbox相对于屏幕y轴偏移 isSmsPrivacyCheckboxInCenter?: boolean, // 设置隐私条款checkbox是否相对协议文字纵向居中 smsPrivacyCheckboxState?: boolean, // 设置隐私条款checkbox默认状态:是否选择 默认:NO smsPrivacyCheckboxMargin?: number[], // 设置协议相对于登录页的间距 only android smsPrivacyCheckboxUncheckedImgPath?: string, // 设置隐私条款checkbox未选中时图片 only iOS smsPrivacyCheckboxCheckedImgPath?: string, // 设置隐私条款checkbox选中时图片 only iOS smsPrivacyBeanList?: Array<{ // 隐私条款配置数组 name: string, // 条款名称 url: string, // 条款链接 separator: string // 分隔符 }>, smsPrivacyClauseStart?: string, // 设置协议条款开头文本 smsPrivacyClauseEnd?: string, // 设置协议条款结尾文本 enableSMSService?: boolean, // 如果开启了短信服务,在认证服务失败时,短信服务又可用的情况下拉起短信服务 smsPrivacyUncheckedMsg?: string, // 短信协议没有被勾选的提示 (仅Android) smsGetCodeFailMsg?: string, // 短信获取失败提示 (仅Android) smsPhoneInvalidMsg?: string // 手机号无效提示 (仅Android) } }, customViewParams?: { customViewName: string, // 在index.js中注册的component customViewPoint: number[] // [int,int,int,int] 基于屏幕左上角的x,y,w,h }): void ``` 注意事项: 1. 关于图片资源: - Android:请将图片放到 res/drawable 目录下 - iOS:请将图片放到 JVerificationResour.bundle 2. 关于颜色:为 colorInt,可在 Android 代码中直观的看到数值,例如 Color.BLACK = -16777216, Color.WHITE = -1 3. 关于 x,y,w,h:为保障显示效果,请同时设置 ### addLoginEventListener 登录事件监听。 ```typescript static addLoginEventListener(callback: (result: { code: number, content: string, operator: string }) => void): void ``` ### addUncheckBoxEventListener iOS 未选中隐私协议 CheckBox 点击登录按钮的回调事件监听。 ```typescript static addUncheckBoxEventListener(callback: (result: any) => void): void ``` ### removeListener 移除事件监听。 ```typescript static removeListener(callback: Function): void ``` ### getVerifyCode SDK 获取验证码。 ```typescript static getVerifyCode(params: { phonenum: string, // 手机号 signid: string, // 签名ID tempid: string // 模板ID }, callback: (result: { code: number, // 返回码 msg: string // 返回信息 }) => void): void ``` ### setCodeTime 设置前后两次获取验证码的时间间隔。 ```typescript static setCodeTime(time: number): void ``` 参数说明: - `time`: 时间间隔(毫秒) ## 错误码 |code|message|备注| |:-----:|:----:|:-----:| |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||请到官网检查此应用的应用详情;更新应用中集成的极光 SDK 至最新| |1010|verify interval is less than the minimum limit|同一号码连续两次提交认证间隔过短| |1011|appSign invalid|应用签名错误,检查签名与 Portal 设置的是否一致| |2000|内容为token|获取 token 成功| |2001|fetch token failed|获取 token 失败| |2002|init failed|SDK 初始化失败| |2003|network not reachable|网络连接不通| |2004|get uid failed|极光服务注册失败| |2005|request timeout|请求超时| |2006|fetch config failed|获取应用配置失败| |2007|内容为异常信息|验证遇到代码异常| |2008|Token requesting, please try again later|正在获取 token 中,稍后再试| |2009|verifying, please try again later|正在认证中,稍后再试 | |2010|don't have READ_PHONE_STATE permission|未开启读取手机状态权限| |2011|内容为异常信息|获取配置时代码异常| |2012|内容为异常信息|获取 token 时代码异常| |2013|内容为具体错误原因|网络发生异常| |2014|internal error while requesting token|请求 token 时发生内部错误| |2016|network type not supported|当前网络环境不支持认证| |4001|parameter invalid|参数错误。请检查参数,比如是否手机号格式不对| |4018||没有足够的余额| |4031||不是认证 SDK 用户| |4032||获取不到用户配置| |4033|appkey is not support login|不是一键登录用户| |5000|bad server|服务器未知错误| |6000|内容为token|获取 loginToken 成功| |6001|fetch loginToken failed|获取 loginToken 失败| |6002|fetch loginToken canceled|用户取消获取 loginToken| |6003|UI 资源加载异常|未正常添加 sdk 所需的资源文件| |6004|authorization requesting, please try again later|正在登录中,稍后再试| |7000|preLogin success|sdk 预取号成功| |7001|preLogin failed|sdk 预取号失败| |7002|preLogin requesting, please try again later|正在预取号中,稍后再试| |-994|网络连接超时| | |-996|网络连接断开| | |-997|注册失败/登录失败|(一般是由于没有网络造成的)如果确保设备网络正常,还是一直遇到此问题,则还有另外一个原因:JPush 服务器端拒绝注册。而这个的原因一般是:你当前 App 的 Android 包名以及 AppKey,与你在 Portal 上注册的应用的 Android 包名与 AppKey 不相同。|