import path from 'node:path' import process from 'node:process' // manifest.config.ts import { defineManifestConfig } from '@uni-helper/vite-plugin-uni-manifest' import { loadEnv } from 'vite' // 手动解析命令行参数获取 mode function getMode() { const args = process.argv.slice(2) const modeFlagIndex = args.findIndex(arg => arg === '--mode') return modeFlagIndex !== -1 ? args[modeFlagIndex + 1] : args[0] === 'build' ? 'production' : 'development' // 默认 development } // 获取环境变量的范例 const env = loadEnv(getMode(), path.resolve(process.cwd(), 'env')) const { VITE_APP_TITLE, VITE_UNI_APPID, VITE_WX_APPID, VITE_APP_PUBLIC_BASE, VITE_FALLBACK_LOCALE, // 默认系统语言 } = env export default defineManifestConfig({ 'name': VITE_APP_TITLE, 'appid': VITE_UNI_APPID, 'description': '', 'versionName': '1.1.1', 'versionCode': '111', 'transformPx': false, 'locale': VITE_FALLBACK_LOCALE === 'bn' ? 'bn' : 'en', // 此app需默认英文 'fallbackLocale': 'en', 'h5': { router: { base: VITE_APP_PUBLIC_BASE, }, uniStatistics: { enable: false, }, }, /* 5+App特有相关 */ 'app-plus': { usingComponents: true, nvueStyleCompiler: 'uni-app', compilerVersion: 3, compatible: { ignoreVersion: true, }, splashscreen: { alwaysShowBeforeRender: true, waiting: true, autoclose: true, delay: 0, }, /* 模块配置 */ modules: { Share: {}, Camera: {}, Push: {}, }, /* 应用发布信息 */ distribute: { /* android打包配置 */ android: { minSdkVersion: 30, targetSdkVersion: 30, abiFilters: ['armeabi-v7a', 'arm64-v8a'], permissions: [ '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', ], }, /* ios打包配置 */ ios: { idfa: false, }, /* SDK配置 */ sdkConfigs: {}, /* 图标配置 */ icons: { android: { hdpi: 'src/static/app/icons/72x72.png', xhdpi: 'src/static/app/icons/96x96.png', xxhdpi: 'src/static/app/icons/144x144.png', xxxhdpi: 'src/static/app/icons/192x192.png', }, ios: { appstore: 'src/static/app/icons/1024x1024.png', ipad: { 'app': 'src/static/app/icons/76x76.png', 'app@2x': 'src/static/app/icons/152x152.png', 'notification': 'src/static/app/icons/20x20.png', 'notification@2x': 'src/static/app/icons/40x40.png', 'proapp@2x': 'src/static/app/icons/167x167.png', 'settings': 'src/static/app/icons/29x29.png', 'settings@2x': 'src/static/app/icons/58x58.png', 'spotlight': 'src/static/app/icons/40x40.png', 'spotlight@2x': 'src/static/app/icons/80x80.png', }, iphone: { 'app@2x': 'src/static/app/icons/120x120.png', 'app@3x': 'src/static/app/icons/180x180.png', 'notification@2x': 'src/static/app/icons/40x40.png', 'notification@3x': 'src/static/app/icons/60x60.png', 'settings@2x': 'src/static/app/icons/58x58.png', 'settings@3x': 'src/static/app/icons/87x87.png', 'spotlight@2x': 'src/static/app/icons/80x80.png', 'spotlight@3x': 'src/static/app/icons/120x120.png', }, }, }, }, uniStatistics: { enable: true, }, nativePlugins: { 'EL-MTPush': { MTPUSH_ADVERTISINGID_IOS: '', MTPUSH_APPKEY_ANDROID: '474b121831f9c027f15d6d32', MTPUSH_APPKEY_IOS: '', MTPUSH_CHANNEL_ANDROID: '', MTPUSH_CHANNEL_IOS: '', MTPUSH_DEFAULTINIT_IOS: '', MTPUSH_GOOGLE_API_KEY: '', MTPUSH_GOOGLE_APP_ID: '', MTPUSH_GOOGLE_PROJECT_ID: '', MTPUSH_GOOGLE_PROJECT_NUMBER: '', MTPUSH_GOOGLE_STORAGE_BUCKET: '', MTPUSH_HONOR_APPID: '', MTPUSH_HUAWEI_APPID: '', MTPUSH_ISPRODUCTION_IOS: '', MTPUSH_MEIZU_APPID: '', MTPUSH_MEIZU_APPKEY: '', MTPUSH_OPPO_APPID: '', MTPUSH_OPPO_APPKEY: '', MTPUSH_OPPO_APPSECRET: '', MTPUSH_PROCESS_ANDROID: '', MTPUSH_VIVO_APPID: '', MTPUSH_VIVO_APPKEY: '', MTPUSH_XIAOMI_APPID: '', MTPUSH_XIAOMI_APPKEY: '', __plugin_info__: { name: 'EngageLab MTPush 官方SDK', description: 'EngageLab MTPush官方SDK HBuilder插件版本', platforms: 'Android,iOS', url: 'https://ext.dcloud.net.cn/plugin?id=10093', android_package_name: 'com.bandhu.mm', ios_bundle_id: '', isCloud: true, bought: 1, pid: '10093', parameters: { MTPUSH_ADVERTISINGID_IOS: { des: '[iOS]广告标识符(IDFA)如果不需要使用IDFA,可不填', key: 'MTPush:ADVERTISINGID', value: '', }, MTPUSH_APPKEY_ANDROID: { des: '[Android]EngageLab portal配置应用信息时分配的AppKey', key: '', value: '', }, MTPUSH_APPKEY_IOS: { des: '[iOS]EngageLab portal配置应用信息时分配的AppKey', key: 'MTPush:APP_KEY', value: '', }, MTPUSH_CHANNEL_ANDROID: { des: '[Android]用于统计分发渠道,不需要可填默认值developer-default', key: '', value: '', }, MTPUSH_CHANNEL_IOS: { des: '[iOS]用于统计分发渠道,不需要可填默认值developer-default', key: 'MTPush:CHANNEL', value: '', }, MTPUSH_DEFAULTINIT_IOS: { des: '[iOS]是否默认初始化,是填true,不是填false或者不填', key: 'MTPush:DEFAULTINIT', value: '', }, MTPUSH_GOOGLE_API_KEY: { des: '厂商google api_key,示例:G-asxa1232', key: 'google_api_key', value: '', }, MTPUSH_GOOGLE_APP_ID: { des: '厂商google mobilesdk_app_id,示例:G-12346578', key: 'google_app_id', value: '', }, MTPUSH_GOOGLE_PROJECT_ID: { des: '厂商google project_id ,示例:G-12346578', key: 'project_id', value: '', }, MTPUSH_GOOGLE_PROJECT_NUMBER: { des: '厂商google project_number,示例:G-12346578', key: 'gcm_defaultSenderId', value: '', }, MTPUSH_GOOGLE_STORAGE_BUCKET: { des: '厂商google storage_bucket,示例:G-12346578', key: 'google_storage_bucket', value: '', }, MTPUSH_HONOR_APPID: { des: '厂商HONOR-appId,示例:12345678', key: '', value: '', }, MTPUSH_HUAWEI_APPID: { des: '厂商HUAWEI-appId,示例:appid=12346578', key: 'com.huawei.hms.client.appid', value: '', }, MTPUSH_ISPRODUCTION_IOS: { des: '[iOS]是否是生产环境,是填true,不是填false或者不填', key: 'MTPush:ISPRODUCTION', value: '', }, MTPUSH_MEIZU_APPID: { des: '厂商MEIZU-appId,示例:MZ-12345678', key: '', value: '', }, MTPUSH_MEIZU_APPKEY: { des: '厂商MEIZU-appKey,示例:MZ-12345678', key: '', value: '', }, MTPUSH_OPPO_APPID: { des: '厂商OPPO-appId,示例:OP-12345678', key: '', value: '', }, MTPUSH_OPPO_APPKEY: { des: '厂商OPPO-appkey,示例:OP-12345678', key: '', value: '', }, MTPUSH_OPPO_APPSECRET: { des: '厂商OPPO-appSecret,示例:OP-12345678', key: '', value: '', }, MTPUSH_PROCESS_ANDROID: { des: '[Android] Engagelab process,Engagelabsdk工作所在的进程,请填写 \':remote\', 注意:开头', key: '', value: '', }, MTPUSH_VIVO_APPID: { des: '厂商VIVO-appId,示例:12345678', key: '', value: '', }, MTPUSH_VIVO_APPKEY: { des: '厂商VIVO-appkey,示例:12345678', key: '', value: '', }, MTPUSH_XIAOMI_APPID: { des: '厂商XIAOMI-appId,示例:MI-12345678', key: '', value: '', }, MTPUSH_XIAOMI_APPKEY: { des: '厂商XIAOMI-appKey,示例:MI-12345678', key: '', value: '', }, }, }, }, }, }, /* 快应用特有相关 */ 'quickapp': { uniStatistics: { enable: false, }, }, /* 小程序特有相关 */ 'mp-weixin': { appid: VITE_WX_APPID, setting: { urlCheck: false, // 是否启用 ES6 转 ES5 es6: true, minified: true, }, optimization: { subPackages: true, }, usingComponents: true, uniStatistics: { enable: false, }, // __usePrivacyCheck__: true, }, 'mp-alipay': { usingComponents: true, styleIsolation: 'shared', uniStatistics: { enable: false, }, }, 'mp-baidu': { usingComponents: true, uniStatistics: { enable: false, }, }, 'mp-toutiao': { usingComponents: true, uniStatistics: { enable: false, }, }, 'app-harmony': { uniStatistics: { enable: false, }, }, 'mp-harmony': { uniStatistics: { enable: false, }, }, 'mp-jd': { uniStatistics: { enable: false, }, }, 'mp-kuaishou': { uniStatistics: { enable: false, }, }, 'mp-lark': { uniStatistics: { enable: false, }, }, 'mp-qq': { uniStatistics: { enable: false, }, }, 'mp-xhs': { uniStatistics: { enable: false, }, }, 'uniStatistics': { enable: false, // 全局开启 version: '2', // 开启新版uni统计,值为字符串 }, 'vueVersion': '3', })