提交 6e601033 作者: 王进

更新内容:1. SDK.Login接口新增scene字段,返回当前用户进入游戏场景值

          2. 针对wx.login接口失败做出优化处理
          3. 增加线上白名单调试功能
上级 5ed3e93c
/** /**
* 鲸鱼游戏微信小游戏接入库 * 鲸鱼游戏微信小游戏接入库
* @author 推广技术部 * @author 推广技术部
* @time: 2020-04-15 * @time: 2020-07-08
*/ */
class WechatSDK { class WechatSDK {
private sdkVersion: string = '2.5.4' private sdkVersion: string = '2.5.4'
...@@ -72,36 +72,38 @@ class WechatSDK { ...@@ -72,36 +72,38 @@ class WechatSDK {
public async Login() { public async Login() {
const _selt = this; const _selt = this;
let res = await _selt._login() // 微信登录换取code let res = await _selt._login() // 微信登录换取code
let loginPostData = _selt.deepCopy({}, _selt.sdkParams, { // 拼上appid和code if (res.code) {
appid: SDKConfig.appid, let { code, data, msg } = await _selt.sdkRequest(Links.init, {
code: res.code product_code: _selt.sdkParams.product_code,
}) source: _selt.sdkParams.source,
let { code, data, msg } = await _selt.sdkRequest(Links.init, loginPostData).catch(err => { appid: SDKConfig.appid,
_selt.sdkAlert("SDK登录异常,重连中..."); code: res.code
_selt.Login() });
}); if (code == 0) {
if (code == 0) { _selt.ReportParams.openId = _selt.sdkParams.open_id = _selt.sdkParams.uniqueid = _selt.heartParams.uuid = data.openid;
_selt.ReportParams.openId = _selt.sdkParams.open_id = _selt.sdkParams.uniqueid = _selt.heartParams.uuid = data.openid; _selt.sdkParams.session_key = data.session_key;
_selt.sdkParams.session_key = data.session_key; // 调试白名单,SDK后台管理
// 调试白名单,SDK后台管理 if (typeof (data.debug_mode) != "undefined" && data.debug_mode == 1) {
if (typeof(data.debug_mode) != "undefined" && data.debug_mode == 1) { console.log('--进入调试白名单.');
console.log('--进入调试白名单.'); (wx as any).setEnableDebug({
(wx as any).setEnableDebug({ enableDebug: true
enableDebug: true })
}) }
} if (_selt.actId) {
if (_selt.actId) { let shareInfo = {
let shareInfo = { activity_id: _selt.actId,
activity_id: _selt.actId, target_state: 0,
target_state: 0, version_type: SDKConfig.navPayEnv
version_type: SDKConfig.navPayEnv };
}; _selt.updateShareMsgInfo(shareInfo);
_selt.updateShareMsgInfo(shareInfo); }
} else {
_selt.sdkAlert(msg);
} }
} else { return _selt.sdkActive()
_selt.sdkAlert(msg); } else { // 失败状态下执行重登
_selt.Login()
} }
return _selt.sdkActive()
} }
// SDK激活 // SDK激活
private async sdkActive() { private async sdkActive() {
...@@ -136,6 +138,7 @@ class WechatSDK { ...@@ -136,6 +138,7 @@ class WechatSDK {
LoginCallBack = _selt.deepCopy(LoginCallBack, data, { LoginCallBack = _selt.deepCopy(LoginCallBack, data, {
os: _selt.sdkParams.os, // 返回系统类型IOS或者android os: _selt.sdkParams.os, // 返回系统类型IOS或者android
session_key: _selt.sdkParams.session_key, // 返回session_key session_key: _selt.sdkParams.session_key, // 返回session_key
scene: _selt.ReportParams.sceneId // 用户来源场景值
}) })
} else { } else {
const params = { const params = {
...@@ -514,6 +517,7 @@ class WechatSDK { ...@@ -514,6 +517,7 @@ class WechatSDK {
}) })
} }
private _login(): Promise<any> { private _login(): Promise<any> {
const _selt = this;
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
try { try {
(wx as any).login({ (wx as any).login({
...@@ -531,7 +535,9 @@ class WechatSDK { ...@@ -531,7 +535,9 @@ class WechatSDK {
console.log("--SDK执行登录,微信返回数据:", res); console.log("--SDK执行登录,微信返回数据:", res);
} }
}); });
} catch (err) { } } catch (err) {
_selt.sdkAlert("微信登录接口返回失败");
}
}); });
} }
// 退出小游戏 // 退出小游戏
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论