| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285 |
- /* 中间层接口规范:
- 1、各个Middle 仅父类写注释,子类不写注释;
- 2、各个Middle的子类 里的方法排序要和 父类 保持一致;
- 3、java 里的方法排序要和 Middle js 保持一致;
- 4、中间结果的方法,放到 MiddleMgr 中;
- */
- cc.Class({
- init () {
- G.MiddleDevice = new (require('MiddleDevice'))();
- G.MiddleAuth = new (require('MiddleAuth'))();
- G.MiddlePay = new (require('MiddlePay'))();
- G.MiddleAD = new (require('MiddleAD'))();
- G.MiddleUpdate = new (require('MiddleUpdate'))();
- G.MiddleBalance = new (require('MiddleBalance'))();
- },
- handleEventJson (eventJson) {
- let eventData = JSON.parse(eventJson);
- this.handleEvent(eventData);
- },
- /**
- * 收到JNI发上来的事件
- *
- * @author Pyden
- * @date 2020-03-11
- * @param {Object} eventData
- */
- handleEvent (eventData) {
- G.LogUtils.warn('MiddleMgr handleEvent', eventData);
- /* eventData参数:
- * @param {String} module
- * @param {String} eventKey
- * @param {Integer} code
- * @param {String} errorMsg
- * @param {Object} data
- */
- let moduleName = eventData.module;
- switch (moduleName) {
- case 'device': {
- G.MiddleDevice.handleEvent(eventData);
- break;
- }
- case 'auth': {
- G.MiddleAuth.handleEvent(eventData);
- break;
- }
- case 'pay': {
- G.MiddlePay.handleEvent(eventData);
- break;
- }
- case 'ad': {
- G.MiddleAD.handleEvent(eventData);
- break;
- }
- case 'update': {
- G.MiddleUpdate.handleEvent(eventData);
- break;
- }
- case 'balance': {
- G.MiddleBalance.handleEvent(eventData);
- break;
- }
- default:
- break;
- }
- },
- //* ************* 公共方法 ************* *//
- /**
- * 获取脚本号
- *
- * @author Ture
- * @date 2019-04-23
- * @returns {Integer}
- */
- getResVersion () {
- return G.RES_VERSION;
- },
- /**
- * 获取游戏版本号(含脚本号)
- *
- * @author Ture
- * @date 2019-04-23
- * @returns {String}
- */
- getVersion () {
- let apkVer = G.MiddleDevice.getVersionName();
- let resVer = this.getResVersion();
- let ret = cc.js.formatStr('%s.%s', apkVer, resVer);
- return ret;
- },
- /**
- * 获取运营商名称
- *
- * @author Ture
- * @date 2019-04-23
- * @returns {String}
- */
- getOperatorName () {
- let map = {'1': '移动', '2': '联通', '3': '电信'};
- let operator = G.MiddleDevice.getOperator();
- operator = operator == undefined ? 0 : operator;
- let ret = map[operator] == undefined ? '未知' : map[operator];
- return ret;
- },
- /**
- * 获取当前网络名称
- *
- * @author Ture
- * @date 2019-04-23
- * @returns {String}
- */
- getApnTypeName () {
- let map = {'-1': '无网络', '1': 'WiFi', '2': 'G', '3': '2/3G', '4': '4G'};
- let apn = G.MiddleDevice.getApnType();
- apn = apn == undefined ? 0 : apn;
- let ret = map[apn] == undefined ? '未知' : map[apn];
- return ret;
- },
- /**
- * 是否在白名单内
- *
- * @author libo
- * @date 2019-08-08
- * @param {Integer} uid 用户uid
- * @returns {Boolean}
- */
- isWhiteList (uid) {
- return false;
- },
- /**
- * 获取UDID
- *
- * @author Pyden
- * @date 2020-02-13
- * @returns {String}
- */
- getUDID () {
- let originUDID = G.MiddleDevice.getUDID();
- // 增加调试的UUID后缀,目的是调试注册账号
- if (G.OPEN_DEBUG) {
- let debugUUID = G.DebugMgr.getValue(JMC.DEBUG_KEY.DEBUG_UUID) || '';
- if (debugUUID > 0) {
- return originUDID + '_t' + debugUUID;
- }
- }
- return originUDID;
- },
- /**
- * 获取UUID
- *
- * @author Pyden
- * @date 2020-02-13
- * @returns {String}
- */
- getUUID () {
- let originUUID = G.MiddleAuth.getUUID();
- // 增加调试的UUID后缀,目的是调试注册账号
- if (G.OPEN_DEBUG) {
- let debugUUID = G.DebugMgr.getValue(JMC.DEBUG_KEY.DEBUG_UUID) || '';
- if (debugUUID > 0) {
- return originUUID + '_t' + debugUUID;
- }
- }
- return originUUID;
- },
- /**
- * 获取IDFA(加密后)
- * cc.js.formatStr('%s|%s|%s|%s|%s|%s', imeiMd5, androidIdMd5, oaid, mac, idfaIos, openUuidIos);
- *
- * @author Pyden
- * @date 2020-05-08
- * @returns
- */
- getIDFAEncode () {
- let idfa = G.MiddleDevice.getIDFA();
- let list = idfa.split('|');
- let imei = list[0];
- let androidId = list[1];
- let oaid = list[2];
- let mac = list[3];
- let idfaIos = list[4];
- let openUuidIos = list[5];
- let imeiMd5 = '';
- if (imei && imei.length > 0) {
- imeiMd5 = MD5.hex(imei);
- }
- let androidIdMd5 = '';
- if (androidId && androidId.length > 0) {
- androidIdMd5 = MD5.hex(androidId);
- }
- if (oaid == undefined) {
- oaid = '';
- }
- if (mac == undefined) {
- mac = '';
- }
- if (idfaIos == undefined) {
- idfaIos = '';
- }
- if (openUuidIos == undefined) {
- openUuidIos = '';
- }
- let ret = cc.js.formatStr('%s|%s|%s|%s|%s|%s', imeiMd5, androidIdMd5, oaid, mac, idfaIos, openUuidIos);
- return ret;
- },
- /**
- * 获取游戏配置
- *
- * @author Pyden
- * @date 2020-03-20
- */
- getGameConfig () {
- return {
- ad: {
- list: [{name: '所有广告', sdkName: 'AllAd'}]
- },
- auth: {
- list: [{name: 'Web授权', sdkName: 'Web', authType: JMC.AUTHORIZE_TYPE.NORMAL}]
- },
- balance: {
- sdkName: 'WebBalance'
- },
- device: {
- sdkName: 'WebDevice'
- },
- pay: {
- list: []
- },
- update: {
- sdkName: 'WebUpdate'
- }
- };
- },
- getMiddleInfoList () {
- let list = [
- cc.js.formatStr('版本名称: %s', G.MiddleDevice.getVersionName()),
- cc.js.formatStr('版本Code: %s', G.MiddleDevice.getVersionCode()),
- cc.js.formatStr('代码版本: %s', G.APP_VERSION),
- cc.js.formatStr('资源版本: %s', G.RES_VERSION),
- cc.js.formatStr('配置版本: %s', G.CONF_VERSION),
- cc.js.formatStr('混淆码: %s', G.HX_CODE),
- cc.js.formatStr('运营商: %s', G.MiddleMgr.getOperatorName()),
- cc.js.formatStr('网络状态: %s', G.MiddleMgr.getApnTypeName()),
- cc.js.formatStr('设备信息: %s', G.MiddleDevice.getDeviceInfo()),
- cc.js.formatStr('隐藏文件夹路径: %s', G.MiddleDevice.getUserDataSavePath()),
- cc.js.formatStr('UDID: %s', G.MiddleMgr.getUDID()),
- cc.js.formatStr('UUID: %s', G.MiddleMgr.getUUID()),
- cc.js.formatStr('IMEI: %s', G.MiddleDevice.getIMEI()),
- cc.js.formatStr('IDFA源串: %s', G.MiddleDevice.getIDFA()),
- cc.js.formatStr('IDFA加密: %s', G.MiddleMgr.getIDFAEncode()),
- cc.js.formatStr('渠道号: %s', G.MiddleDevice.getChannelId()),
- cc.js.formatStr('游戏名称: %s', G.MiddleDevice.getAppName()),
- cc.js.formatStr('游戏包名: %s', G.MiddleDevice.getAppPackageName()),
- cc.js.formatStr('是否支持实名认证: %s', G.MiddleAuth.isSupportRealName()),
- cc.js.formatStr('是否支持打开实名认证: %s', G.MiddleAuth.isSupportOpenRealNameAlert()),
- cc.js.formatStr('是否从游戏中心启动: %s', G.MiddleAuth.isLaunchFromCenter()),
- cc.js.formatStr('是否支持版本更新: %s', G.MiddleUpdate.isSupportUpdate())
- ];
- return list;
- }
- });
|