rpk 简介

rpk 是一种可以在 OPPO 小游戏平台上传运行的包体。开发者的游戏工程按照标准的小游戏工程规则组织,则可以使用打包工具的 quickgame pack [release] 命令进行打包签名,最终生成的 rpk 包可在 OPPO 小游戏平台上传运行。各大游戏引擎发布 OPPO 小游戏均与标准的 OPPO 小游戏工程保持一致。

1. 标准的小游戏工程

标准的小游戏工程项目中如下所示:

├─dist                        存放打包好的小游戏 rpk
|   ├─com.xxx.xxx.signed.rpk
├─sign                        rpk 包签名模块
|   ├─debug                   调试环境
|   |     |-certificate.pem   证书文件
|   |     |-private.pem       私钥文件
|   ├─release                 线上环境
|   |     |-certificate.pem   证书文件
|   |     |-private.pem       私钥文件
├─logo.png                    游戏图标(根据 manifest.json 文件中的配置决定放置的位置)
├─subl                        子包目录(非必须)
|   ├─main.js                 子包入口 js
├─sub2.js                     子包 js (非必须)
├─main.js                     游戏入口 js
├─mainfest.json               项目配置文件,配置游戏图标、包名等

2. Cocos Creator rpk 包目录

工具打包 OPPO 小游戏生成文件,位置在 build/quickgame 文件夹下,如下所示:

├─dist                        存放打包好的小游戏 rpk
|   ├─com.xxx.xxx.signed.rpk  可以放入 OPPO 手机 sdcard 的 games 目录进行调试运行的 rpk 包
├─jsb-adapter                 js 适配代码
|   ├─jsb-engine
├─res                         资源文件
|   ├─import                  外部引入
|   ├─raw-assets              Cocos 自带原生资源
├─sign                        签名文件夹
|   ├─debug                   调试环境
|   |     |-certificate.pem   证书文件
|   |     |-private.pem       私钥签名
|   ├─release                 正式环境的 release 密钥库
|   |     |-certificate.pem   证书文件
|   |     |-private.pem       私钥签名
├─src                         代码资源
|   ├─cocos2d-runtime.js      Cocos2d 运行时代码
|   ├─project.js              工程代码
|   ├─settings.js             配置代码
├─subpackages                 分包目录
├─main.js                     项目入口文件
├─mainfest.json               项目配置文件

3. Egret rpk 包目录

工具打包 OPPO 小游戏生成文件,位置在 xxx_oppogame 文件夹下,如下所示:

├─dist                        存放打包好的小游戏 rpk
|   ├─com.xxx.xxx.signed.rpk  可以放入 OPPO 手机 sdcard 的 games 目录进行调试运行的 rpk 包
├─icon                        图标
├─js                          存放 egret 运行时代码
├─library                     声音、图片、文本加载器的重写以代替引擎默认的加载器,以及文件系统、资源文件的存放方式兼容
├─resource                    游戏资源目录
├─sign                        签名文件夹
|   ├─debug                   调试密钥库
|   |     |-certificate.pem   证书文件
|   |     |-private.pem       私钥签名
|   ├─release                 正式环境的 release 密钥库
|   |     |-certificate.pem   证书文件
|   |     |-private.pem       私钥签名
├─egret.oppogame.js           白鹭引擎与小游戏的适配层
├─main.js                     项目入口文件
├─mainfest.js                 用来引用所有的 js 代码
├─mainfest.json               小游戏的相关参数设置

4. Laya rpk 包目录

工具打包 OPPO 小游戏生成文件,位置在 release/oppogame/quickgame 文件夹下,如下所示:

├─dist                        存放打包好的小游戏 rpk
|   ├─com.xxx.xxx.signed.rpk  可以放入 OPPO 手机 sdcard 的 games 目录进行调试运行的 rpk 包
├─js                          js 压缩文件
|   ├─bundle.js
├─libs                        资源文件
├─prefab                      预置资源
├─res                         图集资源
├─sign                        签名文件夹
|   ├─debug                   调试密钥库
|   |     |-certificate.pem   证书文件
|   |     |-private.pem       私钥签名
|   ├─release                 正式环境的 release 密钥库
|   |     |-certificate.pem   证书文件
|   |     |-private.pem       私钥签名
├─sound                       音频资源
├─test                        测试代码
├─fileconfig.json             图片资源配置文件
├─index.js                    加载依赖项
├─main.js                     入口文件
├─mainfest.json               项目配置文件
├─unpack.json                 打包配置
├─version.json                版本配置

配置文件 mainfest.json

{
  // 游戏包名
  "package": "com.quickgame.demo",
  // 游戏名
  "name": "QuickgameDemo",
  // 游戏版本
  "versionName": "1.0.0",
  // 游戏版本
  "versionCode": "1",
  // 平台版本号
  "minPlatformVersion": "1051",
  // 桌面图标,正方形,默认是 108x108 尺寸,注意替换成自己游戏的 icon
  "icon": "/logo.png",
  // 设备方向,包含 landscape (横屏)和 portrait (竖屏)
  "orientation": "portrait",
  // 不填或者默认值为 app,取值为 app 或 game
  "type": "game",
  // logLevel取值 off,error,warn,info,log,debug,trace
  "config": {
    "logLevel": "off"
  },
  // 分包功能,有分包时才需要,可选字段
  "subpackages": [
    {
      "name": "stage1",
      "root": "stage1/" // 可以指定一个目录,目录下所有js将会统一打包
    },
    {
      "name": "stage2",
      "root": "stage2.js" // 也可以指定一个 JS 文件
    }
  ]
}

注意:

  • 开发完成后,我们发布前,需要使用正式的签名和文件来签名,即开发者需要自己添加证书,其中 debug 下面的证书只供调试使用,开发者需要通过 openssl 命令等工具生成签名文件 private.pem、certificate.pem,之后将其放入 sign/release 文件夹下
  • 发布 release 签名的 rpk 包名会带上 signed ,如 com.xxx.xxx.signed.rpk
© 2020 OPPO. All rights reserved.

results matching ""

    No results matching ""