igsdk 1.1.5 → 1.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. package/README.md +227 -0
  2. package/igsdk.d.ts +225 -120
  3. package/igsdk.js +1 -1
  4. package/package.json +1 -1
package/README.md CHANGED
@@ -223,6 +223,233 @@ export interface ASWAdCallback {
223
223
 
224
224
 
225
225
 
226
+ #### 小游戏模块
227
+
228
+ 小游戏模块所有功能均在MiniGameSdk下,具体功能如下:
229
+
230
+ ###### 登录
231
+
232
+ ```typescript
233
+ /**
234
+ * 登录
235
+ * @param callback 登录回调
236
+ */
237
+ login(callback?: MiniGameLoginCallback): void;
238
+
239
+ //登录示例:
240
+ IG.MiniGameSdk.getInstance()?.login({
241
+ onSuc(code) {
242
+ console.log('login suc.', code);
243
+ },
244
+ onFail(code, msg) {
245
+ console.error('login fail.', code, msg);
246
+ }
247
+ });
248
+ ```
249
+
250
+ ```typescript
251
+ /**
252
+ * 登录回调接口
253
+ */
254
+ interface MiniGameLoginCallback {
255
+ /**
256
+ * 登录成功
257
+ * @param code 登录凭证code
258
+ */
259
+ onSuc(code: string): void;
260
+
261
+ /**
262
+ * 登录失败
263
+ * @param code 错误码
264
+ * @param msg 错误消息
265
+ */
266
+ onFail(code: number, msg: string): void;
267
+ }
268
+ ```
269
+
270
+
271
+
272
+ ###### 检查登录态
273
+
274
+ ```typescript
275
+ /**
276
+ * 检查登录态 session_key 是否过期
277
+ * @param callback 检查登录态回调
278
+ */
279
+ checkSession(callback?: MiniGameCheckSessionCallback): void;
280
+
281
+ //示例:
282
+ IG.MiniGameSdk.getInstance()?.checkSession({
283
+ onSuc() {
284
+ console.log('checkSession suc.');
285
+ },
286
+ onFail(code, msg) {
287
+ console.error('checkSession fail.', code, msg);
288
+ }
289
+ })
290
+ ```
291
+
292
+ ```typescript
293
+ /**
294
+ * 检查登录态session_key回调接口
295
+ */
296
+ interface MiniGameCheckSessionCallback {
297
+ /**
298
+ * 未过期,并且在本生命周期一直有效
299
+ */
300
+ onSuc(): void;
301
+
302
+ /**
303
+ * 已经失效,需要重新执行登录流程
304
+ * @param code 错误码
305
+ * @param msg 错误消息
306
+ */
307
+ onFail(code: number, msg: string): void;
308
+ }
309
+ ```
310
+
311
+
312
+
313
+ ###### 获取用户信息
314
+
315
+ ```typescript
316
+ /**
317
+ * 获取用户信息
318
+ * @param authUserInfoNode 获取用户信息授权按钮的节点信息
319
+ * @param callback 获取用户信息回调
320
+ */
321
+ getUserInfo(authUserInfoNode?: MiniGameAuthUserInfoNode, callback?: MiniGameUserInfoCallback): void;
322
+
323
+
324
+ //示例:
325
+ let interstitialAdNode = find('ButtonLayout/InterstitialAd', this.node);
326
+ console.log(interstitialAdNode);
327
+ let authUserInfoNodeInfo = this.getNodeInScreenRect(interstitialAdNode);
328
+ console.error(authUserInfoNodeInfo);
329
+ IG.MiniGameSdk.getInstance()?.getUserInfo(authUserInfoNodeInfo, {
330
+ onSuc(data) {
331
+ console.log('getUserInfo suc.', data);
332
+ },
333
+ onFail(code, msg) {
334
+ console.error('getUserInfo fail.', code, msg);
335
+ },
336
+ })
337
+ ```
338
+
339
+ ```typescript
340
+ /**
341
+ * 小游戏授权用户信息节点数据(微信小游戏使用)
342
+ */
343
+ export class MiniGameAuthUserInfoNode {
344
+ //左上角横坐标
345
+ public left: number;
346
+ //左上角纵坐标
347
+ public top: number;
348
+ //宽度
349
+ public width: number;
350
+ //高度
351
+ public height: number;
352
+ //是否调试模式(调试模式会展示获取用户信息按钮)
353
+ public debug: boolean;
354
+ }
355
+
356
+ /**
357
+ * 获取用户信息回调接口
358
+ */
359
+ interface MiniGameUserInfoCallback {
360
+ /**
361
+ * 获取用户信息成功
362
+ * @param data 小游戏用户数据
363
+ */
364
+ onSuc(data: MiniGameUserData): void;
365
+
366
+ /**
367
+ * 获取用户信息失败
368
+ * @param code 错误码
369
+ * @param msg 错误消息
370
+ */
371
+ onFail(code: number, msg: string): void;
372
+ }
373
+
374
+ ```
375
+
376
+
377
+
378
+ ###### 分享
379
+
380
+ 使用分享时,在iGlees SDK初始化之后,先设置展示分享按钮
381
+
382
+ ```typescript
383
+ //展示分享按钮
384
+ IG.MiniGameSdk.getInstance().setShareMenu({
385
+ show: true
386
+ });
387
+ ```
388
+
389
+ 其中设置分享方法即参数如下:
390
+
391
+ ```typescript
392
+ /**
393
+ * 设置分享按钮
394
+ * @param shareOpt 分享可配参数
395
+ */
396
+ setShareMenu(shareOpt: MiniGameShareOpt): void;
397
+ ```
398
+
399
+ ```typescript
400
+ /**
401
+ * 分享可配置参数
402
+ * 参数说明:
403
+ * 图片优先级:imageUrlId+imageUrl > useCanvasImg > 默认
404
+ */
405
+ export class MiniGameShareOpt {
406
+
407
+ //是否展示分享按钮(被动转发分享时设置)
408
+ public show?: boolean;
409
+ //分享标题
410
+ public title?: string;
411
+ //分享描述(仅抖音小游戏时可用)
412
+ public desc?: string;
413
+ //审核通过的图片ID (抖音小游戏的templateId)
414
+ public imageUrlId?: string;
415
+ //图片地址
416
+ public imageUrl?: string;
417
+ //是否使用Canvas 内容作为转发图片 (仅微信小游戏时可用)
418
+ public useCanvasImg?: boolean;
419
+ //是否使用带 shareTicket 的转发 (仅微信小游戏时可用)
420
+ public withShareTicket?: false;
421
+ //查询字符串,必须是 key1=val1&key2=val2 的格式
422
+ public query?: string;
423
+ //审核通过的朋友圈预览图图片ID (仅微信小游戏时可用)
424
+ public imagePreviewUrlId?: string;
425
+ //朋友圈预览图链接 (仅微信小游戏时可用)
426
+ public imagePreviewUrl?: string;
427
+ //转发内容类型(仅抖音小游戏时可用)
428
+ public channel?: string;
429
+ }
430
+ ```
431
+
432
+ 如果需要主动分享,具体调用如下:
433
+
434
+ ```typescript
435
+ /**
436
+ * 直接调起分享转发
437
+ * @param shareOpt 分享可配参数
438
+ */
439
+ shareAppMessage(shareOpt: MiniGameShareOpt): void;
440
+
441
+
442
+ //调用示例:
443
+ IG.MiniGameSdk.getInstance().shareAppMessage({
444
+ title: "我就是牌神",
445
+ desc: "十三幺就是爽!",
446
+ imageUrlId: 'testId',
447
+ imageUrl:'testUrl'
448
+ });
449
+ ```
450
+
451
+
452
+
226
453
  #### 网络请求模块
227
454
 
228
455
  ###### 设置HTTP请求配置
package/igsdk.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  declare namespace IG {
2
2
 
3
3
  /**
4
- * 广告位置(横幅、模板广告使用)
5
- */
4
+ * 广告位置(横幅、模板广告使用)
5
+ */
6
6
  export enum AdPosition {
7
7
  BOTTOM = 0,
8
8
  CENTER = 1,
@@ -133,9 +133,118 @@ declare namespace IG {
133
133
  */
134
134
  requestAd(adOpt: AdOpt, callback?: AdCallback): void;
135
135
  }
136
+
136
137
  /**
137
- * 广告请求可配置参数
138
+ * 广告类型(小游戏使用)
139
+ */
140
+ export enum AD_TYPE {
141
+ BANNER = 1,
142
+ CUSTOM = 2,
143
+ INTERSTITIAL = 3,
144
+ REWARD_VIDEO = 4
145
+ }
146
+ /**
147
+ * 初始化参数
148
+ */
149
+ export class ASWInitOpt extends InitOpt {
150
+ mediaIdWeb: string;
151
+ mediaIdAndroid: string;
152
+ mediaIdIOS: string;
153
+ mediaIdOpenHarmony: string;
154
+ }
155
+ /**
156
+ * 请求广告参数
157
+ */
158
+ export class ASWAdOpt {
159
+ adType: AD_TYPE;
160
+ adIdWeb: string;
161
+ adIdAndroid: string;
162
+ adIdIOS: string;
163
+ adIdOpenHarmony: string;
164
+ adIdWechatGame: string;
165
+ adIdDouYinGame: string;
166
+ adOpt: AdOpt;
167
+ miniGameAdOpt: MiniGameAdOpt;
168
+ }
169
+ /**
170
+ * 初始化SDK回调接口
138
171
  */
172
+ export interface ASWInitCallback {
173
+ /**
174
+ * 初始化SDK回调结果
175
+ * @param code 响应吗,code=0表示成功
176
+ * @param msg 响应消息,初始化失败时为具体错误消息
177
+ */
178
+ (code: number, msg: string): void;
179
+ }
180
+ /**
181
+ * 请求广告回调接口
182
+ */
183
+ export interface ASWAdCallback {
184
+ /**
185
+ * 加载广告成功回调
186
+ * @param adId 广告位id
187
+ */
188
+ onAdLoad?(adId: string): void;
189
+ /**
190
+ * 广告曝光回调
191
+ * @param adId 广告位id
192
+ */
193
+ onAdShow?(adId: string): void;
194
+ /**
195
+ * 广告点击回调(Web平台不一定回调)
196
+ * @param adId 广告位id
197
+ */
198
+ onAdClick?(adId: string): void;
199
+ /**
200
+ * 激励视频可以奖励回调
201
+ * @param adId 广告位id
202
+ */
203
+ onAdReward?(adId: string): void;
204
+ /**
205
+ * 激励视频观看完成回调
206
+ * @param adId 广告位id
207
+ */
208
+ onAdComplete?(adId: string): void;
209
+ /**
210
+ * 广告关闭回调(Web平台不一定回调)
211
+ * @param adId 广告位id
212
+ */
213
+ onAdDismiss?(adId: string): void;
214
+ /**
215
+ * 广告加载失败回调
216
+ * @param adId 广告位id
217
+ * @param code 错误码
218
+ * @param msg 错误消息
219
+ */
220
+ onAdError?(adId: string, code: number, msg: string): void;
221
+ }
222
+ /**
223
+ * 广告SDK
224
+ */
225
+ export class AdSdkWrapper {
226
+ /**
227
+ * 获取客户端类型
228
+ * @returns 客户端类型
229
+ */
230
+ private static getClientType;
231
+ /**
232
+ * 初始化广告SDK
233
+ * @param initOpt 初始化可配置参数
234
+ * @param callback 初始化回调
235
+ */
236
+ static init(initOpt: ASWInitOpt, callback?: ASWInitCallback): void;
237
+ /**
238
+ * 请求广告
239
+ * @param adOpt 请求广告可配置参数
240
+ * @param callback 请求广告回调
241
+ */
242
+ static requestAd(adOpt: ASWAdOpt, callback?: ASWAdCallback): void;
243
+ }
244
+
245
+ /**
246
+ * 广告请求可配置参数
247
+ */
139
248
  export class MiniGameAdOpt {
140
249
  adId: string;
141
250
  adIntervals?: number;
@@ -190,6 +299,72 @@ declare namespace IG {
190
299
  */
191
300
  onAdError?(adId: string, code: number, msg: string): void;
192
301
  }
302
+ /**
303
+ * 登录回调接口
304
+ */
305
+ interface MiniGameLoginCallback {
306
+ /**
307
+ * 登录成功
308
+ * @param code 登录凭证code
309
+ */
310
+ onSuc(code: string): void;
311
+ /**
312
+ * 登录失败
313
+ * @param code 错误码
314
+ * @param msg 错误消息
315
+ */
316
+ onFail(code: number, msg: string): void;
317
+ }
318
+ /**
319
+ * 检查登录态session_key回调接口
320
+ */
321
+ interface MiniGameCheckSessionCallback {
322
+ /**
323
+ * 未过期,并且在本生命周期一直有效
324
+ */
325
+ onSuc(): void;
326
+ /**
327
+ * 已经失效,需要重新执行登录流程
328
+ * @param code 错误码
329
+ * @param msg 错误消息
330
+ */
331
+ onFail(code: number, msg: string): void;
332
+ }
333
+ /**
334
+ * 小游戏用户数据
335
+ */
336
+ export class MiniGameUserData {
337
+ nick: string;
338
+ avatar: string;
339
+ encryptedData: string;
340
+ iv: string;
341
+ }
342
+ /**
343
+ * 小游戏授权用户信息节点数据(微信小游戏使用)
344
+ */
345
+ export class MiniGameAuthUserInfoNode {
346
+ left: number;
347
+ top: number;
348
+ width: number;
349
+ height: number;
350
+ debug: boolean;
351
+ }
352
+ /**
353
+ * 获取用户信息回调接口
354
+ */
355
+ interface MiniGameUserInfoCallback {
356
+ /**
357
+ * 获取用户信息成功
358
+ * @param data 小游戏用户数据
359
+ */
360
+ onSuc(data: MiniGameUserData): void;
361
+ /**
362
+ * 获取用户信息失败
363
+ * @param code 错误码
364
+ * @param msg 错误消息
365
+ */
366
+ onFail(code: number, msg: string): void;
367
+ }
193
368
  /**
194
369
  * 分享可配置参数
195
370
  * 参数说明:
@@ -245,6 +420,22 @@ declare namespace IG {
245
420
  * @param ad 广告
246
421
  */
247
422
  hideAd(ad: any): void;
423
+ /**
424
+ * 登录
425
+ * @param callback 登录回调
426
+ */
427
+ login(callback?: MiniGameLoginCallback): void;
428
+ /**
429
+ * 检查登录态 session_key 是否过期
430
+ * @param callback 检查登录态回调
431
+ */
432
+ checkSession(callback?: MiniGameCheckSessionCallback): void;
433
+ /**
434
+ * 获取用户信息
435
+ * @param authUserInfoNode 获取用户信息授权按钮的节点信息
436
+ * @param callback 获取用户信息回调
437
+ */
438
+ getUserInfo(authUserInfoNode?: MiniGameAuthUserInfoNode, callback?: MiniGameUserInfoCallback): void;
248
439
  /**
249
440
  * 设置分享按钮
250
441
  * @param shareOpt 分享可配参数
@@ -307,6 +498,22 @@ declare namespace IG {
307
498
  * @param ad 广告
308
499
  */
309
500
  hideAd(ad: any): void;
501
+ /**
502
+ * 登录
503
+ * @param callback 登录回调
504
+ */
505
+ login(callback?: MiniGameLoginCallback): void;
506
+ /**
507
+ * 检查登录态 session_key 是否过期
508
+ * @param callback 检查登录态回调
509
+ */
510
+ checkSession(callback?: MiniGameCheckSessionCallback): void;
511
+ /**
512
+ * 获取用户信息
513
+ * @param authUserInfoNode 获取用户信息授权按钮的节点信息
514
+ * @param callback 获取用户信息回调
515
+ */
516
+ getUserInfo(authUserInfoNode?: MiniGameAuthUserInfoNode, callback?: MiniGameUserInfoCallback): void;
310
517
  /**
311
518
  * 设置分享按钮
312
519
  * @param shareOpt 分享可配参数
@@ -318,116 +525,10 @@ declare namespace IG {
318
525
  */
319
526
  shareAppMessage(shareOpt: MiniGameShareOpt): void;
320
527
  }
528
+
321
529
  /**
322
- * 广告类型(小游戏使用)
323
- */
324
- export enum AD_TYPE {
325
- BANNER = 1,
326
- CUSTOM = 2,
327
- INTERSTITIAL = 3,
328
- REWARD_VIDEO = 4
329
- }
330
- /**
331
- * 初始化参数
332
- */
333
- export class ASWInitOpt extends InitOpt {
334
- mediaIdWeb: string;
335
- mediaIdAndroid: string;
336
- mediaIdIOS: string;
337
- mediaIdOpenHarmony: string;
338
- }
339
- /**
340
- * 请求广告参数
341
- */
342
- export class ASWAdOpt {
343
- adType: AD_TYPE;
344
- adIdWeb: string;
345
- adIdAndroid: string;
346
- adIdIOS: string;
347
- adIdOpenHarmony: string;
348
- adIdWechatGame: string;
349
- adIdDouYinGame: string;
350
- adOpt: AdOpt;
351
- miniGameAdOpt: MiniGameAdOpt;
352
- }
353
- /**
354
- * 初始化SDK回调接口
355
- */
356
- export interface ASWInitCallback {
357
- /**
358
- * 初始化SDK回调结果
359
- * @param code 响应吗,code=0表示成功
360
- * @param msg 响应消息,初始化失败时为具体错误消息
361
- */
362
- (code: number, msg: string): void;
363
- }
364
- /**
365
- * 请求广告回调接口
366
- */
367
- export interface ASWAdCallback {
368
- /**
369
- * 加载广告成功回调
370
- * @param adId 广告位id
371
- */
372
- onAdLoad?(adId: string): void;
373
- /**
374
- * 广告曝光回调
375
- * @param adId 广告位id
376
- */
377
- onAdShow?(adId: string): void;
378
- /**
379
- * 广告点击回调(Web平台不一定回调)
380
- * @param adId 广告位id
381
- */
382
- onAdClick?(adId: string): void;
383
- /**
384
- * 激励视频可以奖励回调
385
- * @param adId 广告位id
386
- */
387
- onAdReward?(adId: string): void;
388
- /**
389
- * 激励视频观看完成回调
390
- * @param adId 广告位id
391
- */
392
- onAdComplete?(adId: string): void;
393
- /**
394
- * 广告关闭回调(Web平台不一定回调)
395
- * @param adId 广告位id
396
- */
397
- onAdDismiss?(adId: string): void;
398
- /**
399
- * 广告加载失败回调
400
- * @param adId 广告位id
401
- * @param code 错误码
402
- * @param msg 错误消息
403
- */
404
- onAdError?(adId: string, code: number, msg: string): void;
405
- }
406
- /**
407
- * 广告SDK
408
- */
409
- export class AdSdkWrapper {
410
- /**
411
- * 获取客户端类型
412
- * @returns 客户端类型
413
- */
414
- private static getClientType;
415
- /**
416
- * 初始化广告SDK
417
- * @param initOpt 初始化可配置参数
418
- * @param callback 初始化回调
419
- */
420
- static init(initOpt: ASWInitOpt, callback?: ASWInitCallback): void;
421
- /**
422
- * 请求广告
423
- * @param adOpt 请求广告可配置参数
424
- * @param callback 请求广告回调
425
- */
426
- static requestAd(adOpt: ASWAdOpt, callback?: ASWAdCallback): void;
427
- }
428
- /**
429
- * Http请求配置
430
- */
530
+ * Http请求配置
531
+ */
431
532
  export class HttpConfig {
432
533
  timeout: number;
433
534
  }
@@ -505,6 +606,7 @@ declare namespace IG {
505
606
  */
506
607
  post(url: string, params?: string, headers?: Object, callback?: IHttpCallback): void;
507
608
  }
609
+
508
610
  /**
509
611
  * Http请求配置
510
612
  */
@@ -602,9 +704,10 @@ declare namespace IG {
602
704
  */
603
705
  static setToken(token?: string): void;
604
706
  }
707
+
605
708
  /**
606
- * 加解密工具类
607
- */
709
+ * 加解密工具类
710
+ */
608
711
  export class CryptoUtil {
609
712
  private static key;
610
713
  private static iv;
@@ -673,9 +776,10 @@ declare namespace IG {
673
776
  */
674
777
  private static bytesToUUID;
675
778
  }
779
+
676
780
  /**
677
- * 日志等级
678
- */
781
+ * 日志等级
782
+ */
679
783
  export enum LOG_LEVEL {
680
784
  TRACE = 1,
681
785
  DEBUG = 2,
@@ -741,8 +845,8 @@ declare namespace IG {
741
845
  }
742
846
 
743
847
  /**
744
- * 本地存储工具类
745
- */
848
+ * 本地存储工具类
849
+ */
746
850
  export class StorageUtil {
747
851
  /**
748
852
  * 检查是否可以缓存
@@ -760,7 +864,7 @@ declare namespace IG {
760
864
  * @param key 数据key
761
865
  * @returns 数据
762
866
  */
763
- static getData(key: string): string | null;
867
+ static getData(key: string): string;
764
868
  /**
765
869
  * 安全缓存数据(数据会加密)
766
870
  * @param key 数据key
@@ -778,6 +882,7 @@ declare namespace IG {
778
882
  */
779
883
  static getDataSafely(key: string, encryptKey?: string, encryptIv?: string): string | null;
780
884
  }
885
+
781
886
  /**
782
887
  * 客户端类型
783
888
  */
@@ -820,7 +925,7 @@ declare namespace IG {
820
925
  * 初始化(注:使用SDK功能前调用,只需要调用一次,建议进入首个场景就调用)
821
926
  * @param sys 当前系统对象 (CocosCreator<3.0时传cc.sys,CocosCreator>=3.0时传sys)
822
927
  * @param reflection 反射对象(打包原生平台时需要设置,CocosCreator<=3.5时传jsb.reflection, CocosCreator>=3.6时传native.reflection)
823
- * @param logLevel 日志等级(线上环境设置为LOG_ERROR或OFF)
928
+ * @param logLevel 日志等级
824
929
  * @param 是否初始化成功
825
930
  */
826
931
  static init(sys: any, reflection?: any, logLevel?: LOG_LEVEL): boolean;