⼩游戏转发、分享等功能实现
今天我们分享的菜鸟教程⽂档将介绍开发⼩游戏四种常⽤功能的实现⽅法,期望能和开发者朋友们交流,⾮常欢迎⼤家给我们留⾔反馈。
这四种功能分别是:
获取头像功能
转发功能
分享功能
游戏圈
在Egret Wing和开发者⼯具⾥的配置
为实现以上四个功能,我们需要分别在Egret Wing(图1,图2)和开发者⼯具(图3)⾥配置。
需要在Platform.ts⾥调⽤platform.js接⼝。
在Main.ts通过Platform.ts调⽤执⾏函数 。
在 platform.js写相对应的逻辑代码。
以上三点是实现四个⼩游戏功能的通⽤配置,具体操作如下:
获取头像
⽤户登录,可以获取⽤户⾃⼰的头像,参看平台。
Egret Wing,已经在Platform.ts写了默认功能,开发者⼯具已经写了默认逻辑,开发者只需要在Main添加代码 在Egret Wing—>src —>Main.ts添加以下代码
private async runGame() {
const userInfo = UserInfo();
}
protected createGameScene(userInfo:any): void {
// ⽤户头像
let img=new eui.Image();
img.source=userInfo.avatarUrl
this.addChild(img);
}
⼩游戏转发功能
⼩游戏转发功能通过点击⼩游戏右上⾓按钮来触发⼩游戏的内置转发效果,达到转发给朋友的效果。
1. 在Egret Wing—>src—>Platform.ts添加以下代码
declare interface Platform {
shop():Promise<any>;
}
class DebugPlatform implements Platform {
async shop() {}
}
2. 在Egret Wing—>src—>Main.ts添加以下代码
private async runGame() {
platform.shop();
}
3. 在开发者⼯具⾥Platform.ts添加以下代码
转发主要使⽤了wx.showShareMenu()和wx.onShareAppMessage()⽅法,具体参数可参看开发平台
class WxgamePlatform {
shop() {
return new Promise((resolve, reject) => {
wx.showShareMenu({
withShareTicket: true
});
return {
title: "+++",
imageUrl: 'resource/assets/art/heros_goods/btnOK.png'
}
})
})
}
openDataContext = new WxgameOpenDataContext();
}代码转换
⼩游戏分享功能
除了转发功能,我们也可以在⼩游戏内⾃定义⼀个按钮,主动分享给朋友。
1. 在Egret Wing—>src—>Platform.ts添加以下代码
declare interface Platform {
shareAppMessage():Promise<any>;
}
class DebugPlatform implements Platform {
async shareAppMessage(){}
}
1. 在Egret wing—>src—>Main.ts添加以下代码
protected createGameScene(): void {
//游戏内⾃定义分享按钮
let btnClose = new eui.Button();
btnClose.label = "分享";
btnClose.y = 300;
btnClose.horizontalCenter =180;
this.addChild(btnClose);
btnClose.addEventListener(egret.TouchEvent.TOUCH_TAP, ()=>{
platform.shareAppMessage()
}, this)
}
3. 在开发者⼯具⾥Platform.ts添加以下代码
分享主要使⽤了shareAppMessage()⽅法,具体参数可参看开发平台
class WxgamePlatform {
shareAppMessage() {
return new Promise((resolve, reject) => {
wx.shareAppMessage({
title: '转发标题',
imageUrl: 'resource/assets/art/heros_goods/btnOK.png'
})
})
}
openDataContext = new WxgameOpenDataContext();
}
游戏圈
游戏圈,在这⾥和好友交流游戏⼼得。
1. 在Egret Wing—>src—>Platform.ts添加以下代码
declare interface Platform {
createGameClubButton():Promise<any>;
}
class DebugPlatform implements Platform {
async createGameClubButton(){}
}
2. 在Egret Wing—>src—>Main.ts添加以下代码
private async runGame() {
}
3. 在开发者⼯具⾥platform.js添加以下代码
使⽤⽅法createGameClubButton().查看参看平台
class WxgamePlatform {
icon: 'green',
style: {
left: 200,
top: 626,
width: 40,
height: 40
}
})
openDataContext = new WxgameOpenDataContext();
}
以上是⼩游戏四种常见功能的实现⽅法,希望对您有所帮助。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。