Snapchat 试玩广告
PlayCanvas 通过 GitHub 上的官方外部工具支持 Snapchat 试玩广告的格式和要求。
Snapchat 试玩广告使用 MRAID 2.0 API 标准,要求资源位于 index.html 之外,而不是嵌入其中。
外部资源需要放在名称唯一的文件夹中,以便上传到 Snapchat CDN。工具会自动处理命名。
工具存在一些限制,详见 GitHub 文档。
示例项目
Cube Jump 项目可直接导出为 Snapchat 试玩广告,预期 HTML 输出可在此下载。
文件大小建议
未压缩大小的建议上限为 5MB,因此需要规划资源预算。
压缩版 PlayCanvas 引擎代码在未压缩传输状态下约为 1.2MB;资源文件编码为 Base64 字符串后,大小约增加 30%。
因此,资源编码为 Base64 之前的预算约为 3MB。
尽量减小图像尺寸,并使用 TinyPNG 等工具进一步压缩文件。
试玩广告检查事项
Snapchat 广告网络要求行动号召函数位于 index.html 中,以便投放时替换为唯一的跟踪版本。目标 URL 在 Snapchat 广告活动工具中设置。
工具将此逻辑封装为全局函数 snapchatCta();,应在试玩广告项目中调用。
- 是否在行动号召回调中调用了
snapchatCta();?
如何导出
先按照 GitHub 仓库 README 中的设置步骤操作。
预演测试
按原文所述,Snapchat 尚无官方测试工具,因此需要先进行预演测试,再导出广告网络要求的格式。
在 config.json 中按下例配置,即可生成 ZIP,将资源数据和 PlayCanvas 引擎代码作为独立于 index.html 的文件保存。
"one_page": {
"patch_xhr_out": false,
"inline_game_scripts": true,
"extern_files": {
"enabled": true,
"folder_name": "78fb9255-3033-4fe2-b9e1-355b149229a1",
"external_url_prefix": ""
},
"mraid_support": true,
"snapchat_cta": true
}
folder_name 必须是唯一字符串。可以通过 GUID 生成器生成随机 GUID,也可以使用 Snapchat 对接人员指定的字符串。
然后运行:
npm run one-page
完整选项和命令详见 README 的将项目转换为单个 HTML 文件一节。
要在设备上测试,可以使用 Android 应用 Creative Preview,但需要通过 HTTPS 服务器托管广告。
推荐先本地托管,再用 ngrok 创建通往电脑的 HTTPS 隧道,供应用访问。
配置完成后,打开 Creative Preview,按以下设置创建新的 Display 广告:
导出至 Snapchat
准备上传时,需要为 index.html 中的资源引用加上 Snapchat CDN URL 前缀。可以通过 config.json 中的 external_url_prefix 配置:
"one_page": {
"patch_xhr_out": false,
"inline_game_scripts": true,
"extern_files": {
"enabled": true,
"folder_name": "78fb9255-3033-4fe2-b9e1-355b149229a1",
"external_url_prefix": "https://rtb-ads.shadow.snapads.com/html5"
},
"mraid_support": true,
"snapchat_cta": true
}
随后将 ZIP 交给 Snapchat 对接人员,上传至广告网络。