邀请好友功能怎么做? 个人性化分享怎么做?分享是否成功? 分享渠道如何判断? 耐心看完会给你一个答案
玩转QQ玩一玩分享,让游戏增加新的活力
function shareLink() {
BK.Share.share({
qqImgUrl: 'http://hudong.qq.com/docs/engine/img/848B76B5530AA7EE7B38E9A1267D7086.png',
msgUrl: 'https://gitee.com/javen205/Brickengine_Guide?',
title: '测试轻游戏',
summary: 'H5链接分享-By Javen',
});
}
特别说明:
msgUrl&gameId=游戏ID&roomId=房间ID&gameVersion=游戏版本号&uin=QQ号码
msgUrl
普通的Url如果最后不追加问号,分享出去的链接无法直接访问,除非后台做特殊的处理。function shareToArk() {
BK.Share.share({
qqImgUrl: 'http://hudong.qq.com/docs/engine/img/848B76B5530AA7EE7B38E9A1267D7086.png',
isToFriend: true,
summary: '单渠道分享-By Javen',
extendInfo: 'IJPay',
success: function (succObj) {
log('分享成功', succObj.code, JSON.stringify(succObj.data));
},
fail: function (failObj) {
log('分享失败', failObj.code, JSON.stringify(failObj.msg));
},
complete: () => {
log('分享完成,不论成功失败');
}
});
}
特别说明:
JSON.stringify(succObj.data)
{ "reqCode": 0,//单渠道为0 多渠道、截图分享为1 "ret": 0,//分享成功:0;失败:1;取消:2(测试取消也为1) "gameId": xxx, "aioType": 1,//当前聊天窗类型:双人聊天:1;群:4;讨论组:5 (默认为 -1) "shareTo": 0,//分享渠道:QQ:0;QZone:1;微信:2;朋友圈:3 (单渠道分享:0) "isFirstTimeShare": 0 //是否首次分享:首次分享:1;非首次分享:0 }
function share() {
BK.Share.share({
qqImgUrl: 'http://hudong.qq.com/docs/engine/img/848B76B5530AA7EE7B38E9A1267D7086.png',
socialPicPath: 'GameRes://qrcode.png',
title: '测试轻游戏',
summary: '多渠道分享-By Javen',
extendInfo: 'IJPay',
success: function (succObj) {
log('分享成功', succObj.code, JSON.stringify(succObj.data));
},
fail: function (failObj) {
log('分享失败', failObj.code, JSON.stringify(failObj.msg));
},
complete: () => {
log('分享完成,不论成功失败');
}
});
}
特别说明: 回调说明参考单渠道分享下的特别说明
socialPicPath
图片可以自定义再配合extendInfo
就可以做邀请好友相关的功能,如果指定的图片不存在默认使用shareQRCode_default.png
目录为 /sdcard/tencent/MobileQQ/.apollo/game/游戏ID/shareQRCode_default.png
二维码图片可以使用BK.QRCode 二维码模块
快速生成【官方文档】,但生成的图片黑涂涂不个人建议后台配合生成个性化海报。
//异步接口
BK.QRCode.makeQRCodeToFile({
path: 'GameSandBox://qrcode.png',
content: 'https://gitee.com/javen205/IJPay',
config: {
width: 128,
height: 128,
colorDark: {
r: 0.0,
g: 0.0,
b: 0.0,
a: 1.0
},
colorLight: {
r: 1.0,
g: 1.0,
b: 1.0,
a: 1.0
},
correctLevel: BK.QRErrorCorrectLevel.H
},
success: function (succObj) {
BKTools.log("二维码生成成功 path:" + succObj.path);
},
fail: function (err) {
BKTools.log("失败了,失败原因:" + err.msg);
},
complete: function () {
BKTools.log('完成');
}
});
//同步接口
BK.QRCode.makeQRCodeToFileSync({
path: 'GameSandBox://qrcode2.png',
content: 'IJPay让支付触手可及',
config: {
width: 256,
height: 256
}
});
截图分享隶属于多渠道分享只是图片来源于截图。
function screenShotShare() {
//实际像素
var pixelSize = BK.Director.screenPixelSize;
var pWidth = pixelSize.width;
var pWheight = pixelSize.height;
BK.Share.share({
range: {
x: pWidth / 2,
y: pWheight / 2,
width: pWidth,
height: pWheight
},
title: '测试轻游戏',
summary: "截图分享-By Javen",
extendInfo: 'IJPay',
success: function (succObj) {
log('分享成功', succObj.code, JSON.stringify(succObj.data));
},
fail: function (failObj) {
log('分享失败', failObj.code, JSON.stringify(failObj.msg));
},
complete: () => {
log('分享完成,不论成功失败');
}
});
}
特别说明: 回调说明参考单渠道分享下的特别说明
截图文件保存路径
/sdcard/tencent/MobileQQ/.apollo/game/游戏ID/sandbox/screenshot.png
,如果出现截图为空白图片,请替换qqPlayCore.js
为最新
特别说明:
新版本的接口无法自定义分享的标题,分享默认显示的图片需要在游戏后台设置。设置项目-游戏设置-大图素材 旧版本接口可以实现自定义但不推荐使用
CocosCreator开发小游戏交流: 866398797
CocosCreator开发小游戏示例:Brickengine_Guide
完
到这里就介绍完了,个人能力有限如有错误欢迎指正,如有遗漏欢迎补充。如有疑问欢迎留言一起交流讨论。