# 首页下拉二楼
# 一、基本介绍
为了提升用户的游戏心智和游戏曝光,游戏中增加一键订阅到二楼功能以及复访引导任务。一键订阅成功、从下拉二楼进入游戏,即可获得奖励。
此系统能有效提升活跃用户回流,为游戏玩家提供能方便快捷进入游戏的方式。
# 1.一键订阅
| 操作说明 | 示意图 | 功能要求 |
|---|---|---|
| 入口:美团下拉二楼 | ![]() | 1、此功能对美团和开发者名称为一键订阅,对游戏内玩家功能名称为“惊喜福利”,不要混淆。 2、页面效果图和游戏奖励需要在实装到游戏前与美团运营确认。 |
| 一键订阅UI | ![]() | 1、一键订阅UI需要在游戏首页一级页面展示; 2、一般在游戏进行2-5分钟左右展示,或者在不影响新手引导后展示,需要在实装到游戏前与美团运营确认; 3、UI需要有红点提示或其他特效,在玩家添加订阅并领取奖励前,提示需要一直展示; 4、UI需要包含icon和文字,标题文案“惊喜福利”。 |
| 页面展示-未订阅 | ![]() | 1、功能顶部为主标题,文案为“订阅好礼”; 2、中部是美团APP下拉二楼示意图,需要严格按照示意图制作; 3、中下部是功能常驻文案,主要提示玩家访问入口,文案为“从美团首页下拉二楼可以快速进入游戏并领取奖励”; 4、奖励要求2-3种不同品质道具,价值需要大于50元; 5、按钮文案为“立即订阅”。 |
| 页面展示-已订阅 | ![]() | 1、点击“立即订阅”后,系统会自动将游戏添加到美团首页下拉二楼,按钮文案变为“领取奖励”且玩家可以领奖; 2、领取奖励后页面继续保留,刷新为二楼复访活动; 3、一键订阅功能需要注意3个平台接口的接入要求。 |
# 2.二楼复访
| 操作说明 | 示意图 | 功能要求 |
|---|---|---|
| 页面展示-未完成 | ![]() | 1、此模块复用一键订阅模块,在玩家订阅完成后刷新为复访任务 2、功能顶部为主标题,文案为“惊喜好礼” 3、中下部是功能常驻文案,主要提示玩家访问入口,文案为“累计7天从美团首页下拉二楼可以快速进入游戏并领取奖励”; 4、奖励要求2-3种不同品质道具,价值需要大于30元,可以设置为每日不同奖励; 5、按钮文案“去完成”,点击后飘字提示“从美团首页下拉二楼进入游戏即可领奖”,飘字需要与背景做出区别或复用游戏内通用飘字效果。 6、页面效果图和游戏奖励需要在实装到游戏前与美团运营确认。 |
| 页面展示-已完成 | ![]() | 1、玩家从美团首页下拉二楼进入游戏,按钮文案变为“立即领取”; 2、领取奖励后按钮文字变为“明日再来”,具体按钮效果以游戏为准; 3、玩家领取完累计7天的全部奖励后,活动功能模块消失,此活动需要玩家累计7天从二楼进入游戏,才可以领取奖励; 4、玩家未领取奖励时红点或特效一直展示; 5、技术层面需要注意接入时的参数。 |
# 二、一键订阅任务
接入要求:
运营侧:
- 将游戏订阅到美团首页下拉二楼订阅-我的频道,为一次性任务。
- 为了保证订阅效果,需要开发者在游戏中增加一键订阅入口,并将入口放在一级界面中,必须加上提示,红点、动效等等。
- 一键订阅功能文案“惊喜福利”。
- 联系美团运营获取美术素材要求,包含横版和竖版素材规范,开发者只需替换游戏的相关素材即可。
- 一键订阅任务发放奖励价值不低于50元左右,具体奖励和页面效果图在实装到游戏前与美团运营确认。
技术侧:
- 由于不支持游戏内线下测试,建议游戏方开发后提包审核并配置线上开关,平台线上验证通过后游戏方再开启开关。
- 技术开发同学需要注意以下三个接口文档。
注意:只有美团版本等于或高于指定版本的用户才需要展示任务,低于最低版本的用户需要屏蔽任务。美团APP版本android:12.15.200及以上,iOS:12.16.400及以上
# 1、接口使用说明
# 异步:wx.fetchSecondFloorIconOption、同步:wx.fetchSecondFloorIconOptionSync
说明:调用此 Api 获取能否展示一键订阅任务
支持版本: android: 12.15.200及以上 ios: 12.16.400及以上
入参
参数名 类型 默认值 是否必填 说明 channelId string 无 是 同APPID(查找方式:美团开发者平台-游戏库-游戏名下方ID字符串) success function 否(异步API必填) 接口调用成功的回调 出参
参数名 类型 值-说明 showEnable boolean false-不可展示、true-可以展示 isSubscribe boolean false-未订阅、true-已订阅 stateCode int 美团 12.26.200 开始支持 stateCode 字段:1000-传入参数错误(双端)、1001-未命中AB(双端)、1002-未登录(双端)、1003-未注册(双端)、1004-命中二楼止损(仅 iOS)、1005-命中二楼止损(仅安卓)
# wx.updateSecondFloorChannel
说明:调用此 Api 订阅二楼任务
支持版本: android: 12.15.200及以上 ios: 12.16.400及以上
入参
参数名 类型 默认值 是否必填 说明 channelId string 无 是 同APPID(查找方式:美团开发者平台-游戏库-游戏名下方ID字符串) pageCid string 无 是 统一填写值:c_game_4zk2nelx status function 无 是 0:代表取消订阅 1:代表订阅 success function 是 接口调用成功的回调 fail function 是 接口调用失败的回调函数(返回 msg/errMsg 字段) complete function 否 接口调用结束的回调函数(调用成功、失败都会执行) 出参
code意义说明
值 说明 1000 参数异常 1001 未命中 AB 1002 未登录 1003 未注册
# 埋点上报
- 埋点含义见:数据监控
- 说明:埋点上报接口,每次自动订阅成功后进行一次上报(注:该事件埋点必须在 PV 之后,PD 之前上报)
- 非unity引擎:
LXAnalytics( 'moduleView', 'b_game_djrch7n7_mv', { 'page_id': 'c_game_4zk2nelx', 'inner_source': '', 'game_id':'' }, { cid: 'c_game_4zk2nelx' })
- unity引擎:如果接入的游戏类型为unity游戏,支持 LXAnalytics 接口,必须按照以下方式实现:
object[] paap = new object[3];
paap[0] = "b_game_djrch7n7_mv";
paap[1] = new Dictionary<string, object>
{
{ "page_id", "c_game_4zk2nelx" }, { "inner_source", "" }, { "game_id", "" }
};
paap[2] = new Dictionary<string, object>
{
{ "cid", "c_game_4zk2nelx" }
};
WX.LXAnalytics(new LXAnalyticsOption()
{
eventType = "moduleView",
array = paap
});
| 字段名称 | 参数类型 | 参数名称 | 说明 | 是否必报 |
|---|---|---|---|---|
| page_id | string | 页面id | cid,固定上报 c_game_4zk2nelx | 是 |
| inner_source | string | 站内入口 | 可以通过 getLaunchOptionsSync API 获取 | 是 |
| game_id | string | appId | 即APPID,mgcxxxxxx | 是 |
# 2、API使用代码块
美团APP版本支持情况:android:12.15.200及以上,ios:12.16.400及以上
// 版本比较
export const versionCompare = (v1: string, v2: string): boolean => {
// 将两个版本号拆成数组
const arr1 = v1.split('.');
const arr2 = v2.split('.');
const minLength = Math.min(arr1.length, arr2.length);
// 依次比较版本号每一位大小
for (let i = 0; i < minLength; i++) {
if (parseInt(arr1[i], 10) !== parseInt(arr2[i], 10)) {
return (parseInt(arr1[i], 10) > parseInt(arr2[i], 10)) ? true : false;
}
}
// 若前几位分隔相同,则按分隔数比较。
if (arr1.length === arr2.length) {
return true;
}
return (arr1.length > arr2.length) ? true : false;
};
// 各个端最低支持的版本
const iosValidVersion = '12.16.400';
const androidValidVersion = '12.15.200';
const supportCurVersion = (callBack: () => void, fail?: () => void) => {
wx.getSystemInfo({
success: (res?: wx.systemInfo) => {
const { version: curVersion = '', platform = '' } = res || {};
const isVersionValid = (platform.toLowerCase() === 'ios' && versionCompare(curVersion, iosValidVersion)) || versionCompare(curVersion, androidValidVersion);
if (isVersionValid) {
callBack();
} else {
if (typeof fail === 'function') {
fail();
}
}
},
fail: (err) => {
console.log('getSystemInfo-fail', JSON.stringify(err || {}));
}
});
};
const getSecondFloorStatus = (
appId: string,
success: (res?: wx.SecondFloorIconResult) => void
) => {
supportCurVersion(() => {
typeof wx !== 'undefined' && wx?.fetchSecondFloorIconOption({222
channelId: appId,
success,
});
}, () => {
console.log('版本不支持');
});
};
const appId = 'xxx';
// 获取当前订阅状态
getSecondFloorStatus(appId, (res?: wx.SecondFloorIconResult) => {
const { showEnable, isSubscribe } = res || {};
});
// 更新当前订阅状态
const updateSecondFloorChannel = (status: number) => {
supportCurVersion(() => {
typeof wx !== 'undefined' && wx?.updateSecondFloorChannel({
channelId: appId,
pageCid: 'xxx',
status, // 0:代表取消订阅 1:代表订阅
success: () => {
// 订阅/取消订阅成功
},
fail: (e) => {
// 订阅/取消订阅失败
},
});
}, () => {
console.log('版本不支持');
});
};
# 接入流程

如遇到接入问题,请优先查看文档下面"常见问题FAQ"
# 三、二楼复访游戏任务
接入要求:
运营侧:
- 本次需要接入从下拉二楼复访游戏任务,此任务为多次任务,一般跟随创角设置为7天复访,订阅完成后的首日从二楼复访即可领取任务奖励。
- 为了保证订阅效果,把任务入口放在一级界面中,必须加上提示,红点、动效等等。
- 二楼复访任务入口文案“惊喜福利”。
- 联系美团运营获取美术素材要求,包含横版和竖版素材规范,开发者只需替换游戏的相关素材即可。
- 二楼复访任务发放奖励价值在20元左右,具体奖励和页面效果图在实装到游戏前与美团运营确认。
- 当日复访任务完成,按钮显示“明日再来”,全部复访任务完成,功能消失。
技术侧:
- source code:syxlel(识别链接中的业务参数包含syxlel)即可发奖,只有从下拉二楼进入游戏才能领奖,其他渠道不发奖。
- 游戏方开发后提包审核并配置入口白名单,线上验证通过后游戏方再全量开启。
- 获取inner_source参数可以通过mt.getLaunchOptionsSync接口或者onshow的回调(接口可以通过开平文档-API汇总查看)。
注意:只有美团版本等于或高于指定版本的用户才需要展示任务,低于最低版本的用户需要屏蔽任务。美团APP版本android:12.15.200及以上,iOS:12.16.400及以上 4. 考虑用户体验,在任务弹窗展示倒计时7天或累计7次,让用户对于引导任务有感知,避免用户后续投诉。
用户完成一键订阅任务后,可以去做二楼复访游戏任务。
# 任务流程

# 二楼复访任务判断示例

# 四、常见问题FAQ
- Q:一级界面的空间有限,怎么在有限空间展示两个任务?
- A:建议处理为完成订阅到二楼的任务后再展示二楼复访游戏任务。两个任务都是一次性的任务,用户完成任务指定的次数后,不再展示入口。二楼订阅任务入口,并且在入口上加上红点、光效、动画等提示引导用户订阅。
- Q:从二楼复访游戏的奖励是每日都有吗?
- A:完成累计7天或7次复访任务,来教育用户行为心智。
- Q:任务入口展示接口返回为什么false值?
- A:先确认测试账号是否有首页下拉二楼的功能,如果没有需要升级到最新版本或者联系运营同学添加测试账号到下拉二楼白名单;如果已添加白名单,请联系运营同学确认游戏是否已配置下拉二楼功能;以上两种处理都确认仍返回false,需要联系技术同学进行定位。
- Q:是必须要做成面板领奖形式吗?能否登录直接发送玩家账号中,或者邮件发送?
- A:不可以。必须以弹窗形式展示,用户确认领奖后奖励直接发到用户账号中,或者以邮件形式发送,让用户对发奖励有感知,避免客诉。
- Q:弹窗是否可以多个登录方式集合?例如添加桌面、二楼登录、特权登录等集合成一个。
- A:可以的。集合的icon必须在一级页面
- Q:二楼订阅的两个任务是否必须接入?
- A:明星产品必须接入,常规产品可以也建议接入。
- Q:自测用例有吗?如何自测?复访任务是否可以更方便的进行测试?
- A:有自测用例,在运营同步的压缩文件中。可以联系运营同学获取相关文档
- Q:二楼复访任务判断,需要补充inner source的相关信息吗?
- A:不需要。inner source参数平台回传时会自动带过来,每个业务参数code都是唯一的,游戏只需要判断inner source携带的业务参数code是否下拉二楼的(_sylxel)
- Q:接入之后无法开启首页二楼,可能是什么原因?
- A:每次重新安装、清除缓存或者切换账号后,需要遵循以下步骤操作:登录账号-清进程冷启两次
- Q:无法从二楼进入游戏,可能是什么原因?
- A:游戏在上线前无法从二楼进入游戏是符合预期的,需要游戏上线后才能从二楼访问
# 五、二楼订阅任务案例参考
实现优秀案例





