Skip to content

Commit e4fb9ec

Browse files
author
詹强
committed
更新版本号到2.1.5
1 parent 1b40ff3 commit e4fb9ec

File tree

4 files changed

+141
-99
lines changed

4 files changed

+141
-99
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ pod install
113113
## 5. 其他
114114

115115
* 集成前务必将example工程跑通
116-
* JVerification2.1.0属于重构版本,如有紧急需求请前往[极光社区](https://community.jiguang.cn/c/question)
116+
* JVerification2.1.5属于重构版本,如有紧急需求请前往[极光社区](https://community.jiguang.cn/c/question)
117117
* 目前react-native link无法使用
118118
* 上报问题还麻烦先调用JVerification.setLoggerEnable( true),拿到debug日志
119119

example/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@
77
"test": "jest"
88
},
99
"dependencies": {
10-
"jcore-react-native": "1.3.7",
11-
"jverification-react-native": "2.0.0",
10+
"jcore-react-native": "1.5.0",
11+
"jverification-react-native": "2.1.5",
1212
"react": "16.8.6",
1313
"react-native": "0.60.5"
1414
},

index.js

Lines changed: 137 additions & 95 deletions
Original file line numberDiff line numberDiff line change
@@ -12,55 +12,112 @@ const LoginEvent = 'LoginEvent'; //登录事件
1212
export default class JVerification {
1313

1414
/*
15-
* 设置调试模式,默认关闭状态
16-
*
17-
* 该接口需在 init 接口之前调用,避免出现部分日志没打印的情况
18-
* @param params = {"debug":boolean}
19-
* */
20-
static setLoggerEnable(params) {
15+
* 设置调试模式,默认关闭状态
16+
* 该接口需在 init 接口之前调用,避免出现部分日志没打印的情况
17+
* @param enable = boolean
18+
* */
19+
static setLoggerEnable(enable) {
2120
if (Platform.OS == 'android') {
22-
JVerificationModule.setDebugMode(params);
21+
JVerificationModule.setDebugMode(enable);
22+
} else {
23+
JVerificationModule.setDebug(enable);
2324
}
2425
}
2526

27+
/*
28+
* SDK初始化
29+
* @param params = {'time':int,'appkey':String,'channel':String,'advertisingId':String,'isProduction':boolean}
30+
* @param callback = (result) => {"code":int,'content':String}
31+
*
32+
* time:初始化超时时间,单位毫秒,合法范围是(0,30000],推荐设置为5000-10000,默认值为10000
33+
* appkey:极光系统应用唯一标识,必填 (仅ios)
34+
* channel:应用发布渠道,可选 (仅ios)
35+
* advertisingId:广告标识符,可选 (仅ios)
36+
* isProduction:是否生产环境。如果为开发状态,设置为false;如果为生产状态,应改为true。默认为false,可选 (仅ios)
37+
* */
2638
static init(params, callback) {
2739
if (Platform.OS == 'android') {
2840
JVerificationModule.init(params, callback);
41+
} else {
42+
JVerificationModule.setupWithConfig(params, callback);
2943
}
3044
}
3145

46+
/*
47+
* 获取sdk初始化是否成功标识
48+
* @param callback = (result) => {"enable":boolean}
49+
* */
3250
static isInitSuccess(callback) {
3351
if (Platform.OS == 'android') {
3452
JVerificationModule.isInitSuccess(callback);
53+
} else {
54+
JVerificationModule.isSetupClient(callback);
3555
}
3656
}
3757

58+
/*
59+
* SDK判断网络环境是否支持
60+
* @param callback = (result) => {"enable":boolean}
61+
* */
3862
static checkLoginEnable(callback) {
3963
if (Platform.OS == 'android') {
4064
JVerificationModule.checkVerifyEnable(callback);
65+
} else {
66+
JVerificationModule.checkVerifyEnable(callback);
4167
}
4268
}
4369

44-
static getToken(params, callback) {
45-
if (Platform.OS == 'android') {
46-
JVerificationModule.getToken(params, callback);
47-
}
70+
/*
71+
* SDK获取号码认证token
72+
* @param time : int
73+
* @param callback = (result) => {"code":int,'content':String,'operator':String}
74+
*
75+
* time:超时时间(毫秒),有效取值范围(0,10000],若小于等于0则取默认值5000.大于10000则取10000.为保证获取token的成功率,建议设置为3000-5000ms.
76+
* code:返回码,2000代表获取成功,其他为失败,详见错误码描述
77+
* content:成功时为token,可用于调用验证手机号接口。token有效期为1分钟,超过时效需要重新获取才能使用。失败时为失败信息
78+
* operator:成功时为对应运营商,CM代表中国移动,CU代表中国联通,CT代表中国电信。失败时可能为null
79+
* */
80+
static getToken(time, callback) {
81+
JVerificationModule.getToken(time, callback);
4882
}
4983

50-
static preLogin(params, callback) {
51-
JVerificationModule.preLogin(params, callback);
84+
/*
85+
* SDK获取号码认证token
86+
* @param time : int
87+
* @param callback = (result) => {"code":int,'content':String}
88+
*
89+
* time:超时时间(毫秒),有效取值范围(0,10000],若小于等于0则取默认值5000.大于10000则取10000, 为保证预取号的成功率,建议设置为3000-5000ms
90+
* code:返回码,7000代表获取成功,其他为失败,详见错误码描述
91+
* content:调用结果信息描述
92+
* */
93+
static preLogin(time, callback) {
94+
JVerificationModule.preLogin(time, callback);
5295
}
5396

97+
/*
98+
* SDK清除预取号缓存
99+
* */
54100
static clearPreLoginCache() {
55101
JVerificationModule.clearPreLoginCache();
56102
}
57103

58-
static login(params) {
104+
/*
105+
* SDK请求授权一键登录
106+
* @param enable : boolean
107+
*
108+
* boolean:是否自动关闭授权页,true - 是,false - 否;若此字段设置为false,请在收到一键登录回调后调用SDK提供的关闭授权页面方法
109+
* */
110+
static login(enable) {
59111
if (Platform.OS == 'android') {
60-
JVerificationModule.loginAuth(params);
112+
JVerificationModule.loginAuth(enable);
113+
} else {
114+
JVerificationModule.getAuthorizationWithController(enable);
61115
}
62116
}
63117

118+
/*
119+
* SDK关闭授权页面
120+
* */
64121
static dismissLoginPage() {
65122
if (Platform.OS == 'android') {
66123
JVerificationModule.dismissLoginAuthActivity();
@@ -70,121 +127,106 @@ export default class JVerification {
70127
/**
71128
* 设置一键登录页面样式
72129
* 均可选,需要在login前调用生效(ios需要将图片放入JVerificationResource.bundle)
73-
* var config = {
74-
* backgroundImage: string //背景图
130+
* var customConfigParams = {
131+
* backgroundImage: String //背景图
75132
*
76-
* statusBarColorWithNav: boolean //状态栏与导航栏同色。仅在android 5.0以上设备生效
77-
* statusBarDarkMode: boolean //状态栏暗色模式。仅在android 6.0以上设备生效。
78-
* statusBarTransparent: boolean //状态栏是否透明。仅在android 4.4以上设备生效。
79133
* statusBarHidden: boolean //状态栏是否隐藏
134+
* statusBarMode: String //状态栏模式 light,dark
80135
*
81136
* navHidden: boolean //导航栏是否隐藏
82137
* navColor: int //导航栏颜色
138+
*
83139
* navTitle: string //导航栏标题
84140
* navTitleSize: int //导航栏标题文字字体大小(单位:sp)
85141
* navTitleColor: number //导航栏标题文字颜色
86-
* navTransparent: boolean //导航栏背景是否透明,默认不透明
87142
*
88-
* navReturnBtnHidden: boolean //导航栏返回按钮是否隐藏
89-
* navReturnBtnImage: string //导航栏左侧返回按钮图标
90-
* navReturnBtnWidth: int //导航栏返回按钮宽度
91-
* navReturnBtnHeight: int //导航栏返回按钮高度
92-
* navReturnBtnOffsetX: int //导航栏返回按钮距屏幕左侧偏移
93-
* navReturnBtnRightOffsetX: int //导航栏返回按钮距屏幕右侧偏移
94-
* navReturnBtnOffsetY: int //导航栏返回按钮距上端偏移
143+
* navReturnHidden: boolean //导航栏返回按钮是否隐藏
144+
* navReturnImage: string //导航栏左侧返回按钮图标
145+
* navReturnX: int //导航栏返回按钮距屏幕左侧偏移 (仅Android)
146+
* navReturnY: int //导航栏返回按钮距屏幕右侧偏移 (仅Android)
147+
* navReturnW: int //导航栏返回按钮宽度 (仅Android)
148+
* navReturnH: int //导航栏返回按钮高度 (仅Android)
95149
*
96150
* logoHidden: boolean //logo是否隐藏
97151
* logoImage: string //logo(android默认为应用图标;ios默认无)
98-
* logoWidth: int //logo宽
99-
* logoHeight: int //logo高
100-
* logoOffsetX: int //logo相对于屏幕左边x轴偏移
101-
* logoOffsetY: int //logo相对于标题栏下边缘y偏移
102-
* logoOffsetBottomY: int //logo相对于屏幕底部y轴偏移
152+
* logoX: int //logo相对于屏幕左边x轴偏移
153+
* logoY: int //logo相对于标题栏下边缘y偏移
154+
* logoW: int //logo宽
155+
* logoH: int //logo高
103156
*
104157
* numberSize: int //手机号码字体大小(单位:sp)
105158
* numberColor: int //手机号码字体颜色
106-
* numberWidth: int //号码栏宽度
107-
* numberHeight: int //号码栏高度
108-
* numOffsetX: int //号码栏相对于屏幕左边x轴偏移
109-
* numOffsetY: int //号码栏相对于标题栏下边缘y偏移
110-
* numberOffsetBottomY: int //号码栏相对于屏幕底部y轴偏移
159+
* numberX: int //号码栏相对于屏幕左边x轴偏移
160+
* numberY: int //号码栏相对于标题栏下边缘y偏移
161+
* numberW: int //号码栏宽度
162+
* numberH: int //号码栏高度
111163
*
112164
* sloganHidden: boolean //slogan是否隐藏
113165
* sloganTextSize: int //slogan字体大小
114166
* sloganTextColor: int //slogan文字颜色
115-
* sloganOffsetX: int //slogan相对于屏幕左边x轴偏移
116-
* sloganOffsetY: int //slogan相对于标题栏下边缘y偏移
117-
* sloganBottomOffsetY: int //slogan相对于屏幕底部下边缘y轴偏移
167+
* sloganX: int //slogan相对于屏幕左边x轴偏移
168+
* sloganY: int //slogan相对于标题栏下边缘y偏移
169+
* sloganW: int, //slogan宽度 (仅iOS)
170+
* sloganH: int, //slogan高度 (仅iOS)
118171
*
119172
* loginBtnText: string, //登录按钮文字
120173
* loginBtnTextSize: int //登录按钮字体大小
121174
* loginBtnTextColor: int //登录按钮文字颜色
175+
*
122176
* loginBtnImage: string //登录按钮selector选择样式 (仅android)
123177
* loginBtnNormalImage: string //登录按钮正常图片 (仅ios,三个同时设置生效)
124-
* loginBtnUnableImage: string //登录按钮失效图片 (仅ios,三个同时设置生效)
125-
* loginBtnPressedImage: string //登录按钮按下图片 (仅ios,三个同时设置生效)
126-
* loginBtnWidth: int //登录按钮宽度
127-
* loginBtnHeight: int //登录按钮高度
128-
* loginBtnOffsetX: int //登录按钮相对于屏幕左边x轴偏移
129-
* loginBtnOffsetY: int //登录按钮相对于标题栏下边缘y偏移
130-
* loginBtnBottomOffsetY: int //登录按钮相对屏幕底部y轴偏移
131-
*
132-
* privacyOneName: string //隐私条款一名称
133-
* privacyOneUrl: string //隐私条款一链接
134-
* privacyTwoName: string //隐私条款二名称
135-
* privacyTwoUrl: string //隐私条款二链接
136-
* privacyNameColor: int //隐私条款名称颜色
137-
* privacyUrlColor: int //隐私条款链接颜色
138-
* privacyTextOne: String //隐私条款名称外的文字
139-
* privacyTextTwo: String //隐私条款名称外的文字
140-
* privacyTextThree: String //隐私条款名称外的文字
141-
* privacyTextFour: String //隐私条款名称外的文字
142-
* privacyTextWidth: int //隐私条款名称外的文字栏宽度(单位:dp)
143-
* privacyOffsetX: int //隐私条款相对于屏幕左边x轴偏移
144-
* privacyOffsetY: int //隐私条款相对于授权页面底部下边缘y偏移
145-
* privacyTopOffsetY: int //隐私条款相对导航栏下端y轴偏移
146-
* privacyTextGravityCenter: boolean //隐私条款文字是否居中对齐(默认左对齐)
147-
* privacyWithBookTitleMark: boolean //隐私条款运营商协议名是否加书名号
148-
*
178+
* loginBtnDisabledImage: string //登录按钮失效图片 (仅ios,三个同时设置生效)
179+
* loginBtnSelectedImage: string //登录按钮按下图片 (仅ios,三个同时设置生效)
180+
* loginBtnX: int //登录按钮相对于屏幕左边x轴偏移
181+
* loginBtnY: int //登录按钮相对于标题栏下边缘y偏移
182+
* loginBtnW: int //登录按钮宽度
183+
* loginBtnH: int //登录按钮高度
184+
*
185+
* privacyOne: StringArray //[隐私条款一名称,隐私条款一链接]
186+
* privacyTwo: StringArray //[隐私条款二名称,隐私条款二链接]
187+
* privacyColor: intArray //[隐私条款名称颜色,隐私条款链接颜色]
188+
* privacyText: StringArray //[隐私条款名称外的文字,隐私条款名称外的文字,隐私条款名称外的文字,隐私条款名称外的文字]
189+
* privacyTextSize: int //隐私条款文字字体大小
190+
* privacyTextGravityMode: String //隐私条款文本对齐方式,目前仅支持 left、center
191+
* privacyBookSymbolEnable: boolean //隐私条款运营商协议名是否加书名号
192+
* privacyX:int //隐私条款相对于屏幕左边x轴偏移
193+
* privacyY:int //隐私条款相对于导航栏下边缘y偏移
194+
* privacyW:int //隐私条款宽度
195+
* privacyH:int //隐私条款高度
196+
*
149197
* privacyCheckboxHidden: boolean //隐私条款checkbox是否隐藏
150-
* privacyCheckboxSize: boolean //隐私条款checkbox尺寸
151-
* privacyCheckboxImage: string //隐私条款复选框选中图片
152-
* privacyUnCheckboxImage: string //隐私条款复选框未选中图片
153-
* privacyCheckboxState: boolean //隐私条款默认选中状态。默认不选中
154-
* privacyCheckboxInCenter: boolean //隐私条款checkbox是否相对协议文字纵向居中。默认居顶
155-
* privacyToastEnable: boolean //协议栏checkbox未选中时,点击登录按钮是否弹出toast提示用户勾选协议,默认不弹。支持自定义Toast。
198+
* privacyCheckEnable: boolean //隐私条款默认选中状态。默认不选中
199+
* privacyCheckedImage: string //隐私条款复选框选中图片
200+
* privacyUncheckedImage: string //隐私条款复选框未选中图片
156201
*
157202
* privacyWebNavColor: int //协议展示web页面导航栏背景颜色
158-
* privacyWebNavTitleColor: int //协议展示web页面导航栏标题文字颜色
203+
* privacyWebNavTitle:String //协议页导航栏标题(仅iOS)
159204
* privacyWebNavTitleSize: int //协议展示web页面导航栏标题文字大小
160-
* privacyWebNavReturnBtnImage: String //协议展示web页面导航栏返回按钮图标
205+
* privacyWebNavTitleColor: int //协议展示web页面导航栏标题文字颜色
206+
* privacyWebNavReturnImage: String //协议展示web页面导航栏返回按钮图标
207+
* }
208+
*
209+
* var customViewParams = {
210+
* 'customViewName':String, //在index.js中注册的component
211+
* 'customViewPoint':StringArray //[int,int] 基于屏幕左上角的x,y坐标点
161212
* }
213+
*
214+
* 关于图片资源,Android请将图片放到res/drawable目录下,iOS请将图片放到JVerificationResour.bundle
215+
* 关于颜色,为colorInt,可在Android代码中直观的看到数值,例如Color.BLACK = -16777216,Color.WHITE = -1
216+
* 关于x,y,w,h,为保障显示效果,请同时设置。数值为
162217
*/
163-
static setLoginPageConfig(params) {
164-
if (Platform.OS == 'android') {
165-
JVerificationModule.setCustomUIWithConfig(params);
166-
}
167-
}
168-
169-
static addLoginLoadingView(params) {
218+
static addLoginCustomConfig(customConfigParams, customViewParams) {
170219
if (Platform.OS == 'android') {
171-
220+
JVerificationModule.setCustomUIWithConfig(customConfigParams, customViewParams);
221+
} else {
222+
JVerificationModule.customUIWithConfig(customConfigParams, customViewParams);
172223
}
173224
}
174225

175-
static addLoginCustomView(params) {
176-
if (Platform.OS == 'android') {
177-
JVerificationModule.addCustomView(params);
178-
}
179-
}
180-
181-
static addLoginNavCustomView(params) {
182-
if (Platform.OS == 'android') {
183-
JVerificationModule.addNavControlView(params);
184-
}
185-
}
186-
187-
//事件监听
226+
/*
227+
* 登录事件监听
228+
* @param callback = result => {'code':int,'content':String,'operator':String}
229+
* */
188230
static addLoginEventListener(callback) {
189231
listeners[callback] = DeviceEventEmitter.addListener(
190232
LoginEvent, result => {

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
"main": "index.js",
66
"license": "ISC",
77
"author": "wicked.tc130",
8-
"version": "2.1.0",
8+
"version": "2.1.5",
99
"repository": {
1010
"type": "git",
1111
"url": "https://github.com/jpush/jverification-react-native"

0 commit comments

Comments
 (0)