引言
这…已收藏
最近在书院(一个提供优质内容,专门搞学习的地方,可私信“星球”了解和捧场)看到比较多的星友想学习Cocos进行小游戏开发。
“该从什么方向入手?”
从星友们的主题可以看出,小游戏目前不管是国内还是海外,都非常的卷,因此笔者给大家整理一下微信小游戏常用API帮大家更好地卷,大家赶紧收藏用起来吧!
本文源工程可在文末获取,小伙伴们自行前往。
总览
为了更好地演示效果,笔者用之前小游戏的资源简单搭了一个Demo小程序,简单但又不失优雅。
其中分享模块和流量主广告模块相关配置可视化调整。
资源结构清晰易懂,分享、广告独立成模块。组件简单易用。
Cocos3.8.1、2.4.11和其他多版本支持。
分享模块
微信小游戏依赖于它的环境,容易分享传播,因此我们小游戏务必接入分享模块,不能错过一次裂变的机会。
1.转发菜单
点击右上角按钮,会弹出菜单,菜单中的“转发”选项默认不展示。通过 wx.showShareMenu()
和 wx.hideShareMenu()
可动态显示、隐藏这个选项。
接口如下:
/**
* 注册微信事件
*/
registerEvent(): void {
//显示分享按钮(shareAppMessage转发,shareTimeline朋友圈)
wx.showShareMenu({
withShareTicket: true,
menus: ['shareAppMessage', 'shareTimeline']
});
}
2.被动转发
用户点击右上角菜单中的“转发”选项后,会触发转发事件,如果小游戏通过 wx.onShareAppMessage()
监听了这个事件,可通过返回自定义转发参数来修改转发卡片的内容,否则使用默认内容。
接口如下:
/**
* 注册微信事件
*/
registerEvent(): void {
//转发
wx.onShareAppMessage(() => {
return this.getShareData();
});
//分享朋友圈
wx.onShareTimeline(() => {
return this.getShareData();
});
}
/**
* 随机获取配置的分享内容
*/
getShareData() {
var data = {
title: "",//分享微信的标题
imageUrl: "", //通过MP系统审核的图片地址
query: "",//自定义附加参数
};
return data;
}
3.主动转发
游戏内可通过 wx.shareAppMessage()
接口直接调起转发界面,与被动转发类似,可以自定义转发卡片内容。
接口如下:
/**
* 主动转发
*/
shareAppMessage(title: string = "", imageUrl: string = "", query: string = "", shareCallback: any = null): void {
var data = {
title: title,
imageUrl: imageUrl,
query: query
};
wx.shareAppMessage(data);
}
流量主广告模块
流量主作为个人小游戏的主要收入来源,如果你想实现变现,必须要接入这个模块。
1.激励视频
激励视频广告组件是由客户端原生的图片、文本、视频控件组成的,层级最高,会覆盖在上屏 Canvas 上。
接口如下:
private rewardedVideoAd: any;
private rewardAdCallback: any;
private rewardAdCallbackObj: any;
/**
* 播放激励视频广告
*/
showRewardedVideoAd(rewardAdCallback: Function, rewardAdCallbackObj: any): void {
this.rewardAdCallback = rewardAdCallback;
this.rewardAdCallbackObj = rewardAdCallbackObj;
this.createRewardedVideoAd();
if (!this.rewardedVideoAd) {
this.onRewardAdCallback(false);
return;
}
// 用户触发广告后,显示激励视频广告
this.rewardedVideoAd.show().catch(() => {
// 失败重试
this.rewardedVideoAd.load()
.then(() => this.rewardedVideoAd.show