Skip to content

uniapp

打包测试版 App

先分别创建 生产 和 测试 两个打包配置文件,比如 pack.prod.config.jsonpack.dev.config.json

生产版直接使用 cli 打包命令。cli pack --config /path/pack.prod.config.json

测试版通过下方这个 python 脚本,执行 python3 pack-dev.py 来打包。原理是 打包之前把 .env.development 替换 .env.production,打包结束再还原。

python
#!/usr/bin/python3
 
import os

bak_suffix = "bak-for-pack-dev"
pack_dev_config_file = "pack.dev.config.json"

env_production = ".env.production"
env_production_bak = env_production + "." + bak_suffix
env_production_local = env_production + ".local"
env_production_local_bak = env_production_local + "." + bak_suffix

env_development = ".env.development"
env_development_local = env_development + ".local"

if os.path.isfile(env_production_bak):
    exit("异常\n")

os.rename(env_production, env_production_bak)
if os.path.isfile(env_production_local):
    os.rename(env_production_local, env_production_local_bak)

os.rename(env_development, env_production)
if os.path.isfile(env_development_local):
    os.rename(env_development_local, env_production_local)

os.system("/Applications/HBuilderX.app/Contents/MacOS/cli pack --config " + os.getcwd() + "/" + pack_dev_config_file)

os.rename(env_production, env_development)
if os.path.isfile(env_production_local):
    os.rename(env_production_local, env_development_local)

os.rename(env_production_bak, env_production)
if os.path.isfile(env_production_local_bak):
    os.rename(env_production_local_bak, env_production_local)

exit("完成\n")

彩雲博客