FaceBook小游戏


测试、发布和分享小游戏

对于小游戏,您现在可以十分轻松地在本地测试开发版本,自动完成发布流程,以及与团队分享编译版本。本文档会详细说明这些步骤。

通过本地服务器测试游戏

小游戏体验的一大特色就是原生叠加层,这些叠加层会在每个游戏会话前后添加到游戏中。为了促进开发和测试流程,我们支持开发者通过本地服务器运行游戏,提供与玩家在 Facebook 平台中类似的体验。此功能通过嵌入式测试运行工具实现,只需稍加配置即可。

通过 localhost 启用 SSL

嵌入式测试运行工具在 facebook.com 网域下运行,因此仅能通过 https 提供。要在通过 https 提供的页面中嵌入内容,则还需通过 SSL 提供该嵌入式内容。以下步骤将说明如何设置提供安全内容的 localhost 服务器。设置方法有很多种,下文仅介绍其中一种。

  1. 通过 npm 安装 http-server 包。如果未安装 npm,请遵循 Node.JS 网站中的安装说明。然后,运行以下命令:
> $ npm install -g http-server
  1. 通过 openssl 创建私钥和证书。这是安全运行本地服务器的必要步骤。
> $ cd path/to/my/game/
> $ openssl genrsa 2048 > key.pem
> $ openssl req -x509 -days 1000 -new -key key.pem -out cert.pem
# Fill out necessary information
  1. 使用 SSL 从 localhost 运行游戏。密钥和证书准备就绪后,就可使用 SSL 从 localhost 提供游戏。
# Starts to serve via HTTPS, with cache disabled
> $ http-server --ssl -c-1 -p 8080 -a 127.0.0.1
Starting up http-server, serving ./ through https
Available on:
https://127.0.0.1:8080
Hit CTRL-C to stop the server
  1. 之后,在浏览器中输入 https://localhost:8080,您应能看到游戏正在运行。

请注意:您必须至少尝试进入游戏一次,因为您可能需要确认浏览器显示的安全警告,然后才能继续操作。如果是这种情况,而您跳过这一步,游戏将不会加载。

例如,如果是使用 Chrome,您可能需要访问 chrome://flags/#allow-insecure-localhost 并启用“Allow invalid certificates for resources loaded from localhost.”(允许从 localhost 加载的资源使用无效证书),才能避免浏览器显示警告。

在浏览器中运行嵌入式运行工具

现在,已通过安全连接从 localhost 提供游戏,您可将游戏嵌入到我们的运行工具中。在浏览器中输入以下内容:

https://www.facebook.com/embed/instantgames/YOUR_GAME_ID/player?game_url=https://localhost:8080

您应看到游戏在小游戏运行工具中运行,如下所示:

请注意:您必须至少在 fb.gg/play/YOUR_GAME_ID上运行过一次游戏,保证嵌入式运行工具正常运作。

出于安全原因,localhost 是唯一支持使用嵌入式测试运行工具执行测试的域。

在特定对话中通过本地服务器运行游戏

您可以在特定环境中通过本地服务器运行游戏。如要实现此操作,使用上文所述的嵌入式运行工具即可。随后您可利用 FBInstant.context 方法(例如 switchAsync()、createAsync() 和 chooseAsync())切换到其他环境。

这样,您便可在对话环境中通过 localhost 有效运行游戏,同时测试您的环境更新是否能正确发送。

上传编译版本

将游戏打包为一个 .zip 文件

小游戏内容在 Facebook 基础架构上托管,因此,您无需自行托管游戏内容或使用第三方服务。在游戏准备就绪以供测试后,将所有游戏文件打包为一个 .zip 文件。请注意,index.html 文件必须位于此归档的根文件夹中,而不能放入任何子文件夹中。您可通过两种方法上传捆绑包:

1.通过开发者网站上传 .zip 文件

要上传 .zip 文件,请点击“应用面板”中小游戏产品的虚拟主机选项卡。在此处点击上传版本,即可将 .zip 文件上传到 Facebook 的托管服务中。


之后,编译版本会处理文件,仅需数秒时间。如果状态更改为“待命”,则表示应用已准备就绪,可供推送到生产环境!

2.通过图谱 API 上传归档文件

您也可以通过图谱 API 调用上传捆绑包。如果有自动化部署系统,这会很有用。要执行此操作,您需前往虚拟主机部分,然后点击顶部的获取素材上传访问口令按钮,以请求上传口令。

借助对话框中的口令,您可向图谱 API 提交以下调用以提交 .zip 文件。请注意,我们特意使用了视频子域,因为该网址已经过配置,可接收大型上传文件。

curl -X POST https://graph-video.facebook.com/{App ID}/assets -F 'access_token={ASSET UPLOAD ACCESS TOKEN}' -F 'type=BUNDLE' -F 'asset=@./{YOUR GAME}.zip' -F 'comment=Graph API upload'

之后,游戏会在已上传的捆绑包列表中正常显示。您可使用此调用与现有构建系统集成。

托管限制

请牢记,Facebook 托管存在多项限制,其中最重要的是:

  • 不支持 php 等服务器端逻辑。
  • 上传文件的总大小不得超过 200MB。
  • 针对单个应用程序上传的文件数量不得超过 500 个。

详情请参阅虚拟主机文档。

测试上传的编译版本

将编译版本放入生产环境

要在生产环境中测试上传的编译版本,必须先将编译版本放入生产环境中。点击“★”按钮即可将编译版本推送到生产环境。

请注意:
处于生产阶段的编译版本是指将提供给每位游戏玩家的版本。要在生产环境中测试更新,同时又不影响现有游戏人群,您可以构建一个用于测试的版本。这样,系统可以只向应用的开发者和测试者提供此版本。

请注意:请勿使用“创建测试版应用”按钮来为游戏创建测试版应用。对于小游戏,构建一个用于测试的版本才是适当做法。

拥有处于生产阶段的编译版本后,您需要测试该版本,而不是测试在当前本地服务器中运行的编译版本。您可通过以下两种方式中的任意一种完成测试。

1.在 Facebook 中运行游戏

要在动态消息中分享游戏,请点击分享您的游戏部分的分享按钮。此操作可让您在动态消息中分享游戏,并通过任何平台执行测试(台式机、iOS 或 Android)。

2.在 Messenger 中运行游戏

在 Messenger 的小游戏列表中,您和您的团队(在应用中分配到“管理员”、“开发者”或“测试者”身份的用户)应能看到处于开发阶段的所有游戏的列表。此列表名为开发中列表。即使游戏尚未发布,这仍可帮助您在 Messenger 中测试游戏。

3.分享游戏链接

如果已将公共主页与游戏关联,那么您也可以生成可分享的链接。如果您设置了智能助手,用户点击此链接后,系统会在 Messenger 中打开与智能助手的对话,并自动打开游戏。如果未设置智能助手,用户点击链接后将前往您的 Facebook 公共主页,且系统会从该主页自动打开游戏。无论是哪种方式,任何点击链接的用户都应能立即开始游戏。

提交游戏以供应用审核

确认已发布的版本没有问题后,您需要在“应用审核”部分提交游戏以供审核,这样我们的团队便能评估游戏质量及其是否符合我们的开放平台政策。请务必在提交游戏前查看我们的发布检查表,确保游戏符合规定的所有条件。该指南还包含在通过审核后发布游戏的方法说明。

后续步骤

现在,您已了解如何测试和发布游戏,请在提交游戏前查看我们的发布检查清单:小游戏发布检查清单。另请参阅我们的最佳实践部分,了解游戏设计与更新建议。

[FaceBook]测试、发布和分享小游戏相关推荐

  1. Unity发布抖音小游戏:构建与发布

    上篇介绍了如何将字节小游戏SDK接入Unity项目中, 本篇将介绍如何使用Unity字节小游戏构建发布工具,调试和发布字节小游戏.读者可参考教程:Docs 点击菜单ByteGame-StarkSDKT ...

  2. 微信小游戏提供服务器,发布到微信小游戏平台

    发布到微信小游戏平台 早在微信官方正式发布小游戏平台之前,Cocos Creator 团队就和微信开发团队合作完成了 Cocos Creator 对微信小游戏平台的支持.在小游戏正式公布之后,我们也在 ...

  3. 百度游戏HTML5小游戏,发布到百度小游戏

    发布到百度小游戏 百度小游戏是基于手机百度 app 上的智能小程序进行扩展的小游戏,它不仅提供了强大的游戏能力,还和智能小程序一样,提供了大量的原生接口,比如支付,文件系统,位置,分享等.相当于同时结 ...

  4. Cocos Creator 发布到微信小游戏的资源管理

    环境:Cocos Creator v1.9.1: 微信web开发者工具 v1.02.0808300,线上基础调试库 1.9.92. 以下,ccc指cocos creator.资源均指Texture.A ...

  5. [转载]腾讯云大学大咖分享 |小游戏联机对战引擎实践(含源码)

    一个高效率的学习安排,应该是:10%时间,了解行业和技术的发展动态:40%的时间,看教程和慕课:30%的时间,看别人写的代码样例.这三件事做完,最后20%时间再动手编程.看资料和教程,占多数时间.资料 ...

  6. cocoscreator 发布抖音小游戏

    发布到字节跳动小游戏 字节小游戏是基于字节跳动全产品矩阵开发,不需用户下载,点开即玩的全新游戏类型. 小游戏的游戏提交,审核和发布流程等,需要遵守字节官方团队的要求和标准流程,具体信息可以参考 字节跳 ...

  7. 关于Layabox发布的OPPO小游戏程序出错在谷歌浏览器上无报错的解决方案

    关于Layabox发布的OPPO小游戏程序出错在谷歌浏览器上无报错的解决方案 问题原因 解决方法 问题原因 在本地运行时,程序出错会在浏览器中会通过window.onerror输出错误信息 但在OPP ...

  8. 发布到微信小游戏平台

    1.微信小游戏账号注册 1.1 注册小程序 1.1.1 注册流程 1.1.1 注册微信小游戏 进入 小程序注册页 根据指引填写信息和提交相应的资料,服务类目应选择"游戏",子类目可 ...

  9. 游戏发布成微信小游戏

    一.注册登录微信公众号(https://mp.weixin.qq.com/cgi-bin/loginpage) 二.微信公众信息设置 1.基本设置(注意:服务类目一定要设置为小游戏) 2.开发设置(注 ...

最新文章

  1. 反思转变:多努力以积累  多动脑以应变
  2. python生成表达式_说说 Python 的生成器表达式
  3. 移动硬盘安装Windows7
  4. 织梦cms安装完成后登录后台出现空白。主要原因是php版本的问题
  5. Java项目:医院病历信息管理系统(java+SSM+JSP+bootstrap+easyui+Mysql)
  6. CPU GPU设计工作原理(转载)
  7. 音视频开发入门基础及视频会议即时通讯开源技术选择
  8. Linux下使用服务器24小时不间断直播电影电视剧
  9. 数据加密 第四篇:对称密钥
  10. python合并word单元格_使用win32com合并和取消合并单元格
  11. 基于stm32f401的双按键可视化多模式选择模块
  12. 计算机术语 gc 是什么意思,gc是什么意思的缩写
  13. 几何分布期望与方差推导
  14. 各个专业375个国家级精品课程的网址
  15. 德国银行继续对数字货币持观望态度
  16. 关于病毒Backdoor.Gpigeon.uql
  17. 20191203—— 机器学习复习 sklearn转换器与预估器
  18. google浏览器不能播放wmv格式视频
  19. laravel email
  20. 工业机器人 (1)-- 国内外研究现状

热门文章

  1. 2 用python进行OpenCV实战之图像基本知识
  2. spring Ioc本质
  3. 什么是高/低方差、高/低偏差、(推荐阅读)
  4. 用gensim学习word2vec
  5. Android Animation (安卓动画)概念简介
  6. Druid数据库连接池使用参考
  7. Jeff Dean回顾谷歌2021
  8. 激光雷达Lidar Architecture and Lidar Design(下)
  9. 3D目标检测论文阅读多角度解析
  10. 内存缓存LruCache的简单使用