mirror of
				https://gitee.com/xiangheng/x_admin.git
				synced 2025-10-27 01:50:33 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			116 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			116 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| const {
 | ||
| 	defineConfig
 | ||
| } = require("@adtkcn/hb-cli");
 | ||
| 
 | ||
| /**
 | ||
|  *
 | ||
|  * @param {object} param0
 | ||
|  * @param {string} param0.mode 打包模式,通过命令行参数--mode传入
 | ||
|  * @returns
 | ||
|  */
 | ||
| module.exports = ({
 | ||
| 	mode
 | ||
| }) => {
 | ||
| 	console.log("当前mode环境:", mode);
 | ||
| 
 | ||
| 	return defineConfig({
 | ||
| 		// 打包配置项,全部为uniapp官方配置(必须)
 | ||
| 		packConfig() {
 | ||
| 			return {
 | ||
| 				//项目名字或项目绝对路径
 | ||
| 				"project": "x_admin_app",
 | ||
| 				//打包平台 默认值android  值有"android","ios" 如果要打多个逗号隔开打包平台
 | ||
| 				"platform": "android",
 | ||
| 				//是否使用自定义基座 默认值false  true自定义基座 false自定义证书
 | ||
| 				"iscustom": false,
 | ||
| 				//打包方式是否为安心打包默认值false,true安心打包,false传统打包
 | ||
| 				"safemode": true,
 | ||
| 				//android打包参数
 | ||
| 				"android": {
 | ||
| 					//安卓包名
 | ||
| 					"packagename": "uni.UNIFB29F21",
 | ||
| 					//安卓打包类型 默认值0 0 使用自有证书 1 使用公共证书 2 使用老版证书
 | ||
| 					"androidpacktype": "3",
 | ||
| 					//安卓使用自有证书自有打包证书参数
 | ||
| 					//安卓打包证书别名,自有证书打包填写的参数
 | ||
| 					"certalias": "",
 | ||
| 					//安卓打包证书文件路径,自有证书打包填写的参数
 | ||
| 					"certfile": "",
 | ||
| 					//安卓打包证书密码,自有证书打包填写的参数
 | ||
| 					"certpassword": "",
 | ||
| 					//安卓平台要打的渠道包 取值有"google","yyb","360","huawei","xiaomi","oppo","vivo",如果要打多个逗号隔开
 | ||
| 					"channels": ""
 | ||
| 				},
 | ||
| 				//ios打包参数
 | ||
| 				"ios": {
 | ||
| 					//ios appid
 | ||
| 					"bundle": "uni.UNIFB29F21",
 | ||
| 					//ios打包支持的设备类型 默认值iPhone 值有"iPhone","iPad" 如果要打多个逗号隔开打包平台
 | ||
| 					"supporteddevice": "iPhone,iPad",
 | ||
| 					//iOS打包是否打越狱包,只有值为true时打越狱包,false打正式包
 | ||
| 					"isprisonbreak": false,
 | ||
| 
 | ||
| 					//iOS使用自定义证书打包的profile文件路径
 | ||
| 					"profile": "",
 | ||
| 					//iOS使用自定义证书打包的p12文件路径
 | ||
| 					"certfile": "",
 | ||
| 					//iOS使用自定义证书打包的证书密码
 | ||
| 					"certpassword": ""
 | ||
| 				},
 | ||
| 				//是否混淆 true混淆 false关闭
 | ||
| 				"isconfusion": false,
 | ||
| 				//开屏广告 true打开 false关闭
 | ||
| 				"splashads": false,
 | ||
| 				//悬浮红包广告true打开 false关闭
 | ||
| 				"rpads": false,
 | ||
| 				//push广告 true打开 false关闭
 | ||
| 				"pushads": false,
 | ||
| 				//加入换量联盟 true加入 false不加入
 | ||
| 				"exchange": false
 | ||
| 			}
 | ||
| 		},
 | ||
| 		// 自定义manifest.json配置项: 合并到manifest.json中(可选)
 | ||
| 		mergeManifestConfig() {
 | ||
| 			return {
 | ||
| 			};
 | ||
| 		},
 | ||
|     /**
 | ||
|      * 创建APP内环境变量,生成HBuilderEnv.js文件(可选)
 | ||
|      * @returns {any} 环境变量
 | ||
|      */
 | ||
|     appConfig:{
 | ||
|       output:"./HBuilderEnv.js", // 默认./HBuilderEnv.js
 | ||
|       create(){
 | ||
|       },
 | ||
|     },
 | ||
| 		/**
 | ||
| 		 * 定义manifest.versionName的生成规则(可选,默认:auto-increment)
 | ||
| 		 */
 | ||
| 		version: {
 | ||
| 			mode: "date", // 可选值:"custom"、"date"、"auto-increment",
 | ||
| 			/**
 | ||
| 			 * 自定义版本号(可选)
 | ||
| 			 * @param {string[]} VersionNameArr 版本号数组,如:[1, 0, 0]
 | ||
| 			 * @returns {string} 版本号数组,如:1.0.0
 | ||
| 			 */
 | ||
| 			customVersion: (VersionNameArr) => {
 | ||
| 				console.log(VersionNameArr);
 | ||
| 				var lastIndex = VersionNameArr.length - 1;
 | ||
| 				VersionNameArr[lastIndex] = String(
 | ||
| 					parseInt(VersionNameArr[lastIndex]) + 1
 | ||
| 				);
 | ||
| 				return VersionNameArr.join(".");
 | ||
| 			},
 | ||
| 		},
 | ||
| 
 | ||
|     /**
 | ||
|      * 打包后回调(可选)
 | ||
|      * @param {string} filePath 文件路径,appResource打包后是目录
 | ||
|      * @param {"android"|"ios"| "appResource"| "wgt"} fileType 文件类型
 | ||
|      */
 | ||
| 		async onPackEnd(filePath, fileType) {
 | ||
| 			//上传回调
 | ||
| 			console.log("上传回调开始",filePath, fileType);
 | ||
| 		},
 | ||
| 	});
 | ||
| }; | 
