Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
W
weixin_sdk_release
概览
概览
详情
活动
周期分析
版本库
存储库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
JIRA
JIRA
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
open
weixin_sdk_release
Commits
dad9c9fe
提交
dad9c9fe
authored
12月 13, 2019
作者:
王进
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
增加跳转游戏接口
上级
60ae82b8
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
48 行增加
和
38 行删除
+48
-38
SDK.ts
SDK.ts
+48
-38
没有找到文件。
SDK.ts
浏览文件 @
dad9c9fe
...
@@ -4,7 +4,7 @@
...
@@ -4,7 +4,7 @@
* @time: 2019-11-14
* @time: 2019-11-14
*/
*/
class
WechatSDK
{
class
WechatSDK
{
private
sdkVersion
:
string
=
'2.5'
private
sdkVersion
:
string
=
'2.5
.1
'
public
constructor
()
{
public
constructor
()
{
this
.
sdkInit
();
this
.
sdkInit
();
this
.
timerInit
();
this
.
timerInit
();
...
@@ -39,6 +39,9 @@ class WechatSDK {
...
@@ -39,6 +39,9 @@ class WechatSDK {
_selt
.
ReportParams
.
passthroughParams
=
options
.
passthroughParams
||
''
;
_selt
.
ReportParams
.
passthroughParams
=
options
.
passthroughParams
||
''
;
_selt
.
ReportParams
.
fromOpenId
=
options
.
fromOpenId
||
''
;
_selt
.
ReportParams
.
fromOpenId
=
options
.
fromOpenId
||
''
;
_selt
.
actId
=
options
.
actId
||
''
;
_selt
.
actId
=
options
.
actId
||
''
;
_selt
.
sdkParams
.
from_openid
=
options
.
from_openid
||
''
;
_selt
.
sdkParams
.
from_product
=
options
.
from_product
||
''
;
_selt
.
sdkParams
.
from_uid
=
options
.
from_uid
||
''
;
await
_selt
.
getNetworkType
();
await
_selt
.
getNetworkType
();
await
_selt
.
getSystemInfo
();
await
_selt
.
getSystemInfo
();
console
.
log
(
"@@SDK初始化结束"
,
_selt
.
ReportParams
);
console
.
log
(
"@@SDK初始化结束"
,
_selt
.
ReportParams
);
...
@@ -60,29 +63,25 @@ class WechatSDK {
...
@@ -60,29 +63,25 @@ class WechatSDK {
product_code
:
SDKConfig
.
productCode
,
product_code
:
SDKConfig
.
productCode
,
activity_id
:
_self
.
actId
activity_id
:
_self
.
actId
}
}
let
res
=
await
this
.
sdkRequest
(
Links
.
getActShareInfo
,
postData
,
'POST'
).
catch
(
err
=>
{
let
{
code
,
data
}
=
await
this
.
sdkRequest
(
Links
.
getActShareInfo
,
postData
,
'POST'
).
catch
(
err
=>
{
console
.
log
(
"@@SDK异常::getActiveShareInfo"
,
err
);
console
.
log
(
"@@SDK异常::getActiveShareInfo"
,
err
);
});
});
if
(
res
.
code
==
0
)
{
return
code
==
0
?
data
:
0
;
return
res
.
data
;
}
else
{
return
0
;
}
}
}
public
async
Login
()
{
public
async
Login
()
{
const
_selt
=
this
;
const
_selt
=
this
;
const
loginPromise
=
await
_selt
.
_login
()
// 微信登录换取code
let
res
=
await
_selt
.
_login
()
// 微信登录换取code
let
loginPostData
=
_selt
.
deepCopy
({},
_selt
.
sdkParams
,
{
// 拼上appid和code
let
loginPostData
=
_selt
.
deepCopy
({},
_selt
.
sdkParams
,
{
// 拼上appid和code
appid
:
SDKConfig
.
appid
,
appid
:
SDKConfig
.
appid
,
code
:
loginPromise
.
code
code
:
res
.
code
})
})
let
sdkLoginData
=
await
_selt
.
sdkRequest
(
Links
.
init
,
loginPostData
).
catch
(
err
=>
{
let
{
code
,
data
,
msg
}
=
await
_selt
.
sdkRequest
(
Links
.
init
,
loginPostData
).
catch
(
err
=>
{
_selt
.
sdkAlert
(
"SDK登录异常,重连中..."
);
_selt
.
sdkAlert
(
"SDK登录异常,重连中..."
);
_selt
.
Login
()
_selt
.
Login
()
});
});
if
(
sdkLoginData
.
code
==
0
)
{
if
(
code
==
0
)
{
_selt
.
ReportParams
.
openId
=
_selt
.
sdkParams
.
open_id
=
_selt
.
sdkParams
.
uniqueid
=
_selt
.
heartParams
.
uuid
=
sdkLoginData
.
data
.
openid
;
_selt
.
ReportParams
.
openId
=
_selt
.
sdkParams
.
open_id
=
_selt
.
sdkParams
.
uniqueid
=
_selt
.
heartParams
.
uuid
=
data
.
openid
;
_selt
.
sdkParams
.
session_key
=
sdkLoginData
.
data
.
session_key
;
_selt
.
sdkParams
.
session_key
=
data
.
session_key
;
if
(
_selt
.
actId
)
{
if
(
_selt
.
actId
)
{
let
shareInfo
=
{
let
shareInfo
=
{
activity_id
:
_selt
.
actId
,
activity_id
:
_selt
.
actId
,
...
@@ -92,7 +91,7 @@ class WechatSDK {
...
@@ -92,7 +91,7 @@ class WechatSDK {
_selt
.
updateShareMsgInfo
(
shareInfo
);
_selt
.
updateShareMsgInfo
(
shareInfo
);
}
}
}
else
{
}
else
{
_selt
.
sdkAlert
(
sdkLoginData
.
msg
);
_selt
.
sdkAlert
(
msg
);
}
}
return
_selt
.
sdkActive
()
return
_selt
.
sdkActive
()
}
}
...
@@ -100,15 +99,15 @@ class WechatSDK {
...
@@ -100,15 +99,15 @@ class WechatSDK {
private
async
sdkActive
()
{
private
async
sdkActive
()
{
const
_selt
=
this
const
_selt
=
this
console
.
log
(
"@@SDK激活"
,
_selt
.
sdkParams
)
console
.
log
(
"@@SDK激活"
,
_selt
.
sdkParams
)
let
sdkActData
=
await
_selt
.
sdkRequest
(
Links
.
active
,
this
.
sdkParams
).
catch
(
err
=>
{
let
{
code
,
data
,
msg
}
=
await
_selt
.
sdkRequest
(
Links
.
active
,
this
.
sdkParams
).
catch
(
err
=>
{
console
.
log
(
"@@SDK激活异常:"
,
err
)
console
.
log
(
"@@SDK激活异常:"
,
err
)
_selt
.
sdkAlert
(
"@@SDK激活异常:"
+
err
)
_selt
.
sdkAlert
(
"@@SDK激活异常:"
+
err
)
});
});
if
(
sdkActData
.
code
==
0
)
{
if
(
code
==
0
)
{
_selt
.
sdkParams
.
pay_channel
=
sdkActData
.
data
.
default_pay_channel
;
_selt
.
sdkParams
.
pay_channel
=
data
.
default_pay_channel
;
_selt
.
ActiReport
();
// 上报激活
_selt
.
ActiReport
();
// 上报激活
}
else
{
}
else
{
_selt
.
sdkAlert
(
sdkActData
.
msg
);
_selt
.
sdkAlert
(
msg
);
}
}
return
_selt
.
sdkLogin
();
return
_selt
.
sdkLogin
();
}
}
...
@@ -116,24 +115,24 @@ class WechatSDK {
...
@@ -116,24 +115,24 @@ class WechatSDK {
const
_selt
=
this
const
_selt
=
this
// 获取用户信息
// 获取用户信息
_selt
.
sdkParams
.
token
=
''
// 强制清空登录toekn
_selt
.
sdkParams
.
token
=
''
// 强制清空登录toekn
let
sdkLoginData
=
await
_selt
.
sdkRequest
(
Links
.
login
,
_selt
.
sdkParams
).
catch
(
err
=>
{
let
{
code
,
data
,
msg
}
=
await
_selt
.
sdkRequest
(
Links
.
login
,
_selt
.
sdkParams
).
catch
(
err
=>
{
console
.
log
(
"@@SDK登陆异常:"
,
err
)
console
.
log
(
"@@SDK登陆异常:"
,
err
)
_selt
.
sdkAlert
(
"@@SDK登陆异常:"
+
err
)
_selt
.
sdkAlert
(
"@@SDK登陆异常:"
+
err
)
});
});
console
.
log
(
"--SDK登录接口返回::"
,
sdkLoginD
ata
);
console
.
log
(
"--SDK登录接口返回::"
,
d
ata
);
let
LoginCallBack
=
{};
let
LoginCallBack
=
{};
if
(
sdkLoginData
.
code
==
0
)
{
if
(
code
==
0
)
{
// 根据SDK返回用户状态来判断用户是否注册
// 根据SDK返回用户状态来判断用户是否注册
_selt
.
sdkParams
.
token
=
sdkLoginData
.
data
.
token
// 记录用户toekn
_selt
.
sdkParams
.
token
=
data
.
token
// 记录用户toekn
_selt
.
ReportParams
.
userId
=
_selt
.
heartParams
.
userid
=
sdkLoginData
.
data
.
uid
// 记录用户ID
_selt
.
ReportParams
.
userId
=
_selt
.
heartParams
.
userid
=
data
.
uid
// 记录用户ID
LoginCallBack
=
_selt
.
deepCopy
(
LoginCallBack
,
sdkLoginData
.
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
})
})
}
else
{
}
else
{
const
params
=
{
const
params
=
{
title
:
'登录异常'
,
title
:
'登录异常'
,
content
:
sdkLoginData
.
msg
,
content
:
msg
,
showCancel
:
false
,
showCancel
:
false
,
success
:
function
()
{
success
:
function
()
{
_selt
.
exitApp
();
_selt
.
exitApp
();
...
@@ -315,28 +314,21 @@ class WechatSDK {
...
@@ -315,28 +314,21 @@ class WechatSDK {
let
postData
=
this
.
deepCopy
({},
_selt
.
sdkParams
,
phoneInfo
);
let
postData
=
this
.
deepCopy
({},
_selt
.
sdkParams
,
phoneInfo
);
postData
.
type
=
'SDK.BIND_MOBILE'
;
// 小程序专属短信类型
postData
.
type
=
'SDK.BIND_MOBILE'
;
// 小程序专属短信类型
// 发送验证码接口
// 发送验证码接口
let
res
=
await
this
.
sdkRequest
(
Links
.
sendCode
,
postData
).
catch
(
err
=>
{
let
{
code
}
=
await
this
.
sdkRequest
(
Links
.
sendCode
,
postData
).
catch
(
err
=>
{
console
.
log
(
"@@SDK::验证码发送失败"
,
err
);
console
.
log
(
"@@SDK::验证码发送失败"
,
err
);
_selt
.
sdkAlert
(
"发送失败,请重试.."
);
_selt
.
sdkAlert
(
"发送失败,请重试.."
);
});
});
if
(
callback
)
{
if
(
callback
)
code
==
0
?
callback
(
true
)
:
callback
(
false
);
res
.
code
==
0
?
callback
(
true
)
:
callback
(
false
);
}
}
}
public
async
userPhone
(
phoneInfo
,
callback
)
{
public
async
userPhone
(
phoneInfo
,
callback
)
{
const
_selt
=
this
;
const
_selt
=
this
;
let
postData
=
this
.
deepCopy
({},
_selt
.
sdkParams
,
phoneInfo
);
let
postData
=
this
.
deepCopy
({},
_selt
.
sdkParams
,
phoneInfo
);
postData
.
source
=
'WEIXIN'
;
// 用户平台来源
postData
.
source
=
'WEIXIN'
;
// 用户平台来源
//保存用户手机信息
//保存用户手机信息
let
res
=
await
this
.
sdkRequest
(
Links
.
saveNum
,
postData
).
catch
(
err
=>
{
let
{
code
,
msg
}
=
await
this
.
sdkRequest
(
Links
.
saveNum
,
postData
).
catch
(
err
=>
{
console
.
log
(
"@@SDK::保存手机失败"
,
err
);
console
.
log
(
"@@SDK::保存手机失败"
,
err
);
});
});
if
(
res
.
code
==
0
)
{
code
==
0
?
callback
(
true
)
:
callback
(
false
);
callback
(
true
);
}
else
{
console
.
log
(
"@@绑定失败::"
,
res
.
msg
);
callback
(
false
);
}
}
}
public
async
checkUserAdvised
()
{
// 防沉迷验证
public
async
checkUserAdvised
()
{
// 防沉迷验证
const
_selt
=
this
;
const
_selt
=
this
;
...
@@ -650,6 +642,21 @@ class WechatSDK {
...
@@ -650,6 +642,21 @@ class WechatSDK {
console
.
log
(
"访问客服异常-->"
,
err
)
console
.
log
(
"访问客服异常-->"
,
err
)
}
}
}
}
// 切换游戏
public
navToOtherGame
(
params
)
{
const
_self
=
this
;
const
obj
=
{
// 跳转参数
appId
:
params
.
appid
,
// 跳转的小程序appid
path
:
''
,
// 跳转到首页
envVersion
:
SDKConfig
.
navPayEnv
,
//跳转方式
extraData
:
{
from_openid
:
_self
.
sdkParams
.
open_id
,
from_product
:
SDKConfig
.
productCode
,
from_uid
:
_self
.
ReportParams
.
userId
}
}
this
.
navigateToMiniProgram
(
obj
);
}
private
navigateToMiniProgram
(
params
)
{
private
navigateToMiniProgram
(
params
)
{
if
(
this
.
ReportParams
.
SDKVersion
<
'2.2'
)
{
if
(
this
.
ReportParams
.
SDKVersion
<
'2.2'
)
{
this
.
sdkAlert
(
'微信版本不兼容,请升级..'
)
this
.
sdkAlert
(
'微信版本不兼容,请升级..'
)
...
@@ -1030,7 +1037,7 @@ class WechatSDK {
...
@@ -1030,7 +1037,7 @@ class WechatSDK {
});
});
}
}
public
hideGameRecorderShareButton
()
{
public
hideGameRecorderShareButton
()
{
if
(
this
.
recorderBtn
)
this
.
recorderBtn
.
hide
();
if
(
this
.
recorderBtn
)
this
.
recorderBtn
.
hide
();
}
}
private
heartParams
=
{
private
heartParams
=
{
action
:
"heartbeat"
,
action
:
"heartbeat"
,
...
@@ -1117,7 +1124,10 @@ class WechatSDK {
...
@@ -1117,7 +1124,10 @@ class WechatSDK {
unionid
:
''
,
// 用户Unionid,用于切支付
unionid
:
''
,
// 用户Unionid,用于切支付
pay_channel
:
''
,
// 支付方式,初始化接口返回
pay_channel
:
''
,
// 支付方式,初始化接口返回
client_type
:
'weixin_minigame'
,
// 客户端类型
client_type
:
'weixin_minigame'
,
// 客户端类型
session_key
:
''
// 用户session_key
session_key
:
''
,
// 用户session_key
from_openid
:
''
,
// 跳转前小游戏的用户openid
from_product
:
''
,
// 跳转前小游戏对接的产品CODE
from_uid
:
''
,
// 跳转前小游戏登录的SDK用户UID
}
}
}
}
// SDK后端接口(勿改)
// SDK后端接口(勿改)
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论