Appearance
uniapp
打包测试版 App
先分别创建 生产 和 测试 两个打包配置文件,比如 pack.prod.config.json
、pack.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")