# 不使用 pda项目,以后的新需求或者修改 使用 本项目 打包正式环境发布: 先修改 .env 文件,修改为目标请求路径 NODE_ENV = development VUE_APP_ENV_NAME = 默认环境 VUE_APP_UPGRADE_NAME = erp_pda VUE_APP_PRODUCTION_API_URL = https://www.haotopai.com/hcscm/mes/server/pda/v1 VUE_APP_DEV_API_URL = https://www.haotopai.com/hcscm/mes/server/pda/v1 HBuilderX中 点击 生成本地打包APP资源 点击云打包 选择自有证书 输入证书库密码和证书私钥密码:123456 点击快速安心打包 # pda-cli ## Project setup ``` yarn install ``` ### Compiles and hot-reloads for development ``` yarn serve ``` ### Compiles and minifies for production ``` yarn build ``` ### Customize configuration See [Configuration Reference](https://cli.vuejs.org/config/). ### 本地电脑window 使用命令行云打包: cli命令需要配置环境变量:[cli配置环境变量](https://hx.dcloud.net.cn/cli/README) cli云打包使用: ``` cli pack --config D:/work_xuan/pda-cli/pack.json ``` pack.json内容如下:详情可访问 [CLI uni-app发行 - Android/iOS云打包](https://hx.dcloud.net.cn/cli/pack) 了解更多 以下的证书信息是我本地电脑的本地证书:生成证书可参考 [证书生成](https://ask.dcloud.net.cn/article/35777) 本地使用Android Studio 离线打包教程如下: [Android 打包发行](https://nativesupport.dcloud.net.cn/AppDocs/package/android.html) ``` { //项目名字或项目绝对路径 "project": "pda", //打包平台 默认值android 值有"android","ios" 如果要打多个逗号隔开打包平台 "platform":"android", //是否使用自定义基座 默认值false true自定义基座 false自定义证书 "iscustom": false, //打包方式是否为安心打包默认值false,true安心打包,false传统打包 "safemode": false, //android打包参数 "android": { //安卓包名 "packagename":"uni.UNI_F79F300", //安卓打包类型 默认值0 0 使用自有证书 1 使用公共证书 2 使用老版证书 3 使用云端证书 "androidpacktype":"0", //安卓使用自有证书自有打包证书参数 //安卓打包证书别名,自有证书打包填写的参数 "certalias":"testalias", //安卓打包证书文件路径,自有证书打包填写的参数 "certfile":"C:\\Users\\13597\\test.keystore", //安卓打包证书密码,自有证书打包填写的参数 "certpassword":"123456", //安卓打包证书库密码(HBuilderx4.41支持),自有证书打包填写的参数 "storePassword": "123456", //安卓平台要打的渠道包 取值有"google","yyb","360","huawei","xiaomi","oppo","vivo",如果要打多个逗号隔开 "channels":"" }, //ios打包参数 "ios": { //ios appid "bundle":"com.test.ios", //ios打包支持的设备类型 默认值iPhone 值有"iPhone","iPad" 如果要打多个逗号隔开打包平台 "supporteddevice":"iPhone,iPad", //iOS使用自定义证书打包的profile文件路径 "profile":"", //iOS使用自定义证书打包的p12文件路径 "certfile":"", //iOS使用自定义证书打包的证书密码 "certpassword":"123" }, //是否混淆 true混淆 false关闭 "isconfusion":false, //开屏广告 true打开 false关闭 "splashads":false, //悬浮红包广告true打开 false关闭 "rpads":false, //push广告 true打开 false关闭 "pushads":false, //加入换量联盟 true加入 false不加入 "exchange":false } ``` ### 云服务器走CICD 打包: 需要下载 [Linux HBuilderX Cli](https://ask.dcloud.net.cn/article/41469) ### 上传 PDA 安装包 云打包得到 APK 后,用命令行上传,等价于 ERP「开发者资源上传」里的安装包上传。登录和签名走本分支接口 `https://hcscmtest.zzfzyc.com/hcscm`。 先把 `src/manifest.json` 的 `versionName`、`versionCode` 改成新版本,再打包。安装包里的版本号必须和上传文件名一致,否则 PDA 会反复提示升级。 ``` npm run upload:apk -- --file D:\path\你的.apk --target test npm run upload:apk -- --file D:\path\你的.apk --target prod ``` `npm` 后面的 `--` 只是分隔符,用来把 `--file`、`--target` 传给脚本。也可以不经过 npm: ``` node scripts/upload-apk.js --file D:\path\你的.apk --target test ``` 运行后输入 ERP 手机号和密码获取 token。账号下有多个账套时,再按序号选一次。 `--target` 只决定 APK 放到哪套 CDN,没有别的差别。生产环境的 PDA 也可以从测试 CDN 下载并安装。 | 参数 | 说明 | |---|---| | `--target test` | 测试 CDN:`https://zsfzcdn.yushangfangzhi.com` | | `--target prod` | 正式 CDN:`https://zsfzcdn.yushangfangzhi.com` | | `--mode` | 默认 `zhoushang`。可选 `zhoushang`、`zhisheng`、`mes`、`cjt` | | `--version` | 可选。不传则用 `src/manifest.json` 的 `versionName` | 场景值取对应 `.env.{mode}` 里的 `VUE_APP_UPGRADE_NAME`。保存路径为 `/version/{场景值}/{版本号}.apk`。版本包上传成功后,同一份安装包会再传到 `/version/{场景值}/latest.apk`。本分支默认场景是 `.env.zhoushang` 的 `erp_pda_zhoushang`,上传成功后会打印完整下载地址,例如: ``` https://zsfzcdn.yushangfangzhi.com/version/erp_pda_zhoushang/1.1.9.apk https://zsfzcdn.yushangfangzhi.com/version/erp_pda_zhoushang/latest.apk ```