manifest.config.ts 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162
  1. // manifest.config.ts
  2. import { defineManifestConfig } from '@uni-helper/vite-plugin-uni-manifest'
  3. import path from 'node:path'
  4. import { loadEnv } from 'vite'
  5. // 获取环境变量的范例
  6. const env = loadEnv(process.env.NODE_ENV!, path.resolve(process.cwd(), 'env'))
  7. const {
  8. VITE_APP_TITLE,
  9. VITE_UNI_APPID,
  10. VITE_WX_APPID,
  11. VITE_APP_PUBLIC_BASE,
  12. VITE_FALLBACK_LOCALE,
  13. } = env
  14. export default defineManifestConfig({
  15. name: VITE_APP_TITLE,
  16. appid: VITE_UNI_APPID,
  17. description: '',
  18. versionName: '1.0.0',
  19. versionCode: '100',
  20. transformPx: false,
  21. locale: VITE_FALLBACK_LOCALE, // 'zh-Hans'
  22. /* 5+App特有相关 */
  23. 'app-plus': {
  24. usingComponents: true,
  25. nvueStyleCompiler: 'uni-app',
  26. compilerVersion: 3,
  27. compatible: {
  28. ignoreVersion: true,
  29. },
  30. splashscreen: {
  31. alwaysShowBeforeRender: true,
  32. waiting: true,
  33. autoclose: true,
  34. delay: 0,
  35. },
  36. /* 模块配置 */
  37. modules: {
  38. Maps: {},
  39. Messaging: {},
  40. Contacts: {},
  41. Camera: {},
  42. },
  43. /* 应用发布信息 */
  44. distribute: {
  45. /* android打包配置 */
  46. android: {
  47. minSdkVersion: 30,
  48. targetSdkVersion: 30,
  49. abiFilters: ['armeabi-v7a', 'arm64-v8a'],
  50. permissions: [
  51. '<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>',
  52. '<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>',
  53. '<uses-permission android:name="android.permission.VIBRATE"/>',
  54. '<uses-permission android:name="android.permission.READ_LOGS"/>',
  55. '<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>',
  56. '<uses-feature android:name="android.hardware.camera.autofocus"/>',
  57. '<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>',
  58. '<uses-permission android:name="android.permission.CAMERA"/>',
  59. '<uses-permission android:name="android.permission.GET_ACCOUNTS"/>',
  60. '<uses-permission android:name="android.permission.READ_PHONE_STATE"/>',
  61. '<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>',
  62. '<uses-permission android:name="android.permission.WAKE_LOCK"/>',
  63. '<uses-permission android:name="android.permission.FLASHLIGHT"/>',
  64. '<uses-feature android:name="android.hardware.camera"/>',
  65. '<uses-permission android:name="android.permission.WRITE_SETTINGS"/>',
  66. ],
  67. },
  68. /* ios打包配置 */
  69. ios: {},
  70. /* SDK配置 */
  71. sdkConfigs: {
  72. maps: {
  73. amap: {
  74. name: 'amap_15931993294Bqxlq8EgG',
  75. appkey_ios: 'c913e46ffdf548ebc56ac1cf4d883e7e',
  76. appkey_android: 'c913e46ffdf548ebc56ac1cf4d883e7e',
  77. },
  78. },
  79. },
  80. /* 图标配置 */
  81. icons: {
  82. android: {
  83. hdpi: 'src/static/app/icons/72x72.png',
  84. xhdpi: 'src/static/app/icons/96x96.png',
  85. xxhdpi: 'src/static/app/icons/144x144.png',
  86. xxxhdpi: 'src/static/app/icons/192x192.png',
  87. },
  88. ios: {
  89. appstore: 'src/static/app/icons/1024x1024.png',
  90. ipad: {
  91. app: 'src/static/app/icons/76x76.png',
  92. 'app@2x': 'src/static/app/icons/152x152.png',
  93. notification: 'src/static/app/icons/20x20.png',
  94. 'notification@2x': 'src/static/app/icons/40x40.png',
  95. 'proapp@2x': 'src/static/app/icons/167x167.png',
  96. settings: 'src/static/app/icons/29x29.png',
  97. 'settings@2x': 'src/static/app/icons/58x58.png',
  98. spotlight: 'src/static/app/icons/40x40.png',
  99. 'spotlight@2x': 'src/static/app/icons/80x80.png',
  100. },
  101. iphone: {
  102. 'app@2x': 'src/static/app/icons/120x120.png',
  103. 'app@3x': 'src/static/app/icons/180x180.png',
  104. 'notification@2x': 'src/static/app/icons/40x40.png',
  105. 'notification@3x': 'src/static/app/icons/60x60.png',
  106. 'settings@2x': 'src/static/app/icons/58x58.png',
  107. 'settings@3x': 'src/static/app/icons/87x87.png',
  108. 'spotlight@2x': 'src/static/app/icons/80x80.png',
  109. 'spotlight@3x': 'src/static/app/icons/120x120.png',
  110. },
  111. },
  112. },
  113. },
  114. },
  115. /* 快应用特有相关 */
  116. quickapp: {},
  117. /* 小程序特有相关 */
  118. 'mp-weixin': {
  119. appid: VITE_WX_APPID,
  120. setting: {
  121. urlCheck: false,
  122. minified: true
  123. },
  124. usingComponents: true,
  125. // __usePrivacyCheck__: true,
  126. },
  127. 'mp-alipay': {
  128. usingComponents: true,
  129. styleIsolation: 'shared',
  130. },
  131. 'mp-baidu': {
  132. usingComponents: true,
  133. },
  134. 'mp-toutiao': {
  135. usingComponents: true,
  136. },
  137. h5: {
  138. router: {
  139. base: VITE_APP_PUBLIC_BASE,
  140. },
  141. sdkConfigs: {
  142. maps: {
  143. amap: {
  144. key: '21f194a0d33197f874f7bbdd198419be',
  145. securityJsCode: 'a46b425f31a4de445b2966d998fba851',
  146. serviceHost: '',
  147. },
  148. },
  149. },
  150. },
  151. 'app-harmony': {
  152. distribute: {
  153. bundleName: 'uniapp.demo.test',
  154. },
  155. },
  156. uniStatistics: {
  157. enable: false,
  158. },
  159. vueVersion: '3',
  160. })