自定义打包小游戏的build template,接入SDK,

CocosCreator版本是2.2.1,打包发布oppo,vivo,小米,百度,魅族。

oppo

 

修改引擎目录的resources/buildin/oppo-runtime/build-runtime.js,加了个方法

function handleSdk(dir) {
    var path = getResPath('sdk');
    var dirJsbAdapter = path.join(dir, 'sdk');
    if (fs.existsSync(dirJsbAdapter)) {
        fs.removeSync(dirJsbAdapter);
    }
    fs.copySync(rtAdapterPath, dirJsbAdapter);
}

在onBeforeBuildFinish里调用了这个方法,这样就能把shsdk中的自定义脚本导入到rpk包中以便引用,自定义main.js,在window.boot方法中require('shsdk/sdk.js')即可使用sdk提供的接口。

 

 

 打包得到的rpk包放在手机games文件夹,用快应用工具调试即可。

vivo

引擎目录的resources/buildin/vivo-runtime/build-runtime.js,在handleBeforeBuild方法里加了行

moveSync(path.join(dirTarget, 'sdk'), path.join(zipRootPath, 'sdk'));

自定义main.js同上。

vivo手机安装快应用框架后,如果通过快应用调试器无法调试rpk包。按照Cocos官方文档提供的办法,cmd进入到qgame目录,(node环境)npm run server打开链接扫码即可,再开一个cmd窗口npm run debug打开调试界面。

如果打包目录qgame中存在dist-temp而不是dist,首先确定安装了node环境和

npm install -g @vivo-minigame/cli

这个模块,若确定无误,目录中仍打出现dist-temp,cmd进入qgame目录下,执行npm run build即可获得详细错误日志。

小米

不用改什么,只不过main.js变成了boot.js。具体看官方文档。

百度

百度开发者工具会出些毛病,不影响。具体看官方文档。

魅族

cocos官方没有提供文档,但是魅族最后也是打包成rpk的。cocos选择web-mobile方式打包,然后按下面的文档操作。

https://shimo.im/docs/enni3mhvNyo5fZOm/read

笔者没有魅族手机无法使用魅族的SDK登录,但是能通过adb命令在华为手机上加载到登录界面。

魅族快游戏框架有个问题是字体会向上飘5px左右,在快游戏框架1064之后修复了。

UC小游戏

uc小游戏属于h5渠道,使用cocos打包选择web-mobile,之后需要将build/web-mobile目录下的图片用pngquant压缩,再整个压缩到zip文件中提供给渠道方。

bat命令

for /R %%i in (*.png) do (
    pngquant --ext .png --force --verbose --quality=30-85 "%%i"
)

 

posted @ 2020-03-26 18:58  羊羔吃草  阅读(886)  评论(0编辑  收藏  举报