简体中文
manifest.json
是 uni-app x 项目的配置文件,用于设置应用的名称、版本、图标等信息。在 HBuilderX 中创建项目时此文件保存在根目录。
uni-app x 默认没有splash启动界面,因uni-app x打包后启动速度非常快,可以自己做一个简单的uvue页面来当做splash。HBuilderX3.99+版本新增支持配置splash启动界面,详情参考启动界面配置。
uni-app x 不再提供内置模块选择,而是提供了摇树机制自动选择内置模块,详情参考模块配置。
属性 | 类型 | 默认值 | 兼容性 | 描述 |
---|---|---|---|---|
appid | string | - | DCloud AppID 使用说明 | |
name | string | - | 应用名称 | |
description | string | - | 应用描述 | |
versionName | string | - | 应用版本名称 | |
versionCode | integer | - | 应用版本号,必须是整数,取值范围1~2147483647;升级时必须高于上一次设置的值。 | |
locale | '' | - | 默认语言 | |
fallbackLocale | '' | - | 默认回退语言 | |
uni-app-x | uni-app-x 配置项列表 | - | 存在uni-app-x节点则表示为uni-app x项目 | |
app | app 配置项列表 | - | App平台(原生App)配置 | |
__hbuilderx | __hbuilderx 配置项列表 | - | 用于HBuilderX可视化界面相关操作配置 |
注意
appid
由 DCloud 云端分配,主要用于 DCloud 相关的云服务,请勿自行修改。详见uni-app-x
节点必须存在,它是一个项目是否是 uni-app x项目的核心标识。
存在uni-app-x节点则表示为uni-app x项目
属性 | 类型 | 默认值 | 兼容性 | 描述 |
---|---|---|---|---|
flex-direction | 'row' | 'row-reverse' | 'column' | 'column-reverse' | "column" | - | uvue页面默认flex排列方向 |
App平台(原生App)配置
属性 | 类型 | 默认值 | 兼容性 | 描述 |
---|---|---|---|---|
defaultAppTheme | 'auto' | 'light' | 'dark' | "auto" | 应用默认主题,可取值 light/dark/auto,默认值为 light。应用主题适配参考文档 | |
distribute | distribute 配置项列表 | - | - | App平台发布配置 |
initPrivacyAuthorization | 'auto' | 'agree' | 'disagree' | "auto" | 始隐私协议是否同意状态,可取值 auto/agree/disagree,默认值为 auto。获取应用隐私协议状态相关api参考文档 |
老uni-app可配置原生的隐私弹框。这是因为开发者的js执行较慢,在原生代码获取隐私前来不及弹框,不能满足先弹隐私政策后采集数据的合规要求。
但uni-app x是原生的,开发者的代码执行非常快,无需再提供隐私政策弹框配置。自行弹框即可。
uni-app x 的权限配置,移入了AndroidManifest.xml中。
使用uni内置模块时,云端打包会自动添加模块需要的Android权限,不需要在AndroidManifest.xml中配置。
uni-app x 的隐私信息访问的许可描述配置,移入了Info.plist中。
使用uni内置模块时,云端打包回自动添加模块需要的隐私信息访问的许可描述,但许可描述信息是通用描述,不一定适合应用的实际使用场景描述,需根据应用的实际情况在Info.plist中配置准确的许可描述。
HBuilder4.31版本新增支持
uni-app x 的渠道信息配置,云端需在“App打包”界面配置,详情参考配置渠道包。
离线打包时需在原生工程中配置,详情参考Android平台配置应用渠道包。
App平台发布配置
属性 | 类型 | 默认值 | 兼容性 | 描述 |
---|---|---|---|---|
syncDebug | boolean | - | - | 是否为自定义调试基座 |
icons | icons 配置项列表 | - | - | Android、iOS平台应用图标配置。云打包后生效,建议在HBuilderX中 manifest.json 的可视化界面操作,不推荐手动在源码视图中修改。 |
splashScreens | splashScreens 配置项列表 | - | - | Android、iOS平台应用启动界面配置。云端打包后生效,建议在HBuilderX中 manifest.json 的可视化界面操作。 |
android | android 配置项列表 | - | - | App-Android平台发布配置 |
ios | ios 配置项列表 | - | - | IOS配置 |
modules | modules 配置项列表 | - | - | app内置模块配置 |
Android、iOS平台应用图标配置。云打包后生效,建议在HBuilderX中 manifest.json 的可视化界面操作,不推荐手动在源码视图中修改。
属性 | 类型 | 默认值 | 兼容性 | 描述 |
---|---|---|---|---|
android | android 配置项列表 | - | - | Android图标配置 |
ios | ios 配置项列表 | - | - | iOS图标配置 |
注意
属性 | 类型 | 默认值 | 兼容性 | 描述 |
---|---|---|---|---|
hdpi | string | - | - | 高分屏设备程序图标,分辨率要求72x72 |
xhdpi | string | - | - | 720P高分屏设备程序图标,分辨率要求96x96 |
xxhdpi | string | - | - | 1080P高分屏设备程序图标,分辨率要求144x144 |
xxxhdpi | string | - | - | 2K屏设备程序图标,分辨率要求192x192 |
必须使用
png
格式图标
属性 | 类型 | 默认值 | 兼容性 | 描述 |
---|---|---|---|---|
appstore | string | - | - | iPhone/iPad设备应用图标,分辨率要求 1024x1024 |
必须使用
png
格式图标,图片中不能存在透明区域
Android、iOS平台应用启动界面配置。云端打包后生效,建议在HBuilderX中 manifest.json 的可视化界面操作。
属性 | 类型 | 默认值 | 兼容性 | 描述 |
---|---|---|---|---|
ldpi | string | - | - | 适用于(mdpi)密度屏幕(~120dpi),建议分辨率 240x320。此类设备不常见,通常可以不用配置此项。 |
mdpi | string | - | - | 适用于(mdpi)密度屏幕(~160dpi),建议分辨率 320x480。此类设备不常见,通常可以不用配置此项。 |
hdpi | string | - | - | 适用于(hdpi)密度屏幕(~240dpi),建议分辨率 480x800。此类设备不常见,通常可以不用配置此项。 |
xhdpi | string | - | - | 适用于(xhdpi)密度屏幕(~320dpi),建议分辨率 720x1280 |
xxhdpi | string | - | - | 适用于(xxhdpi)密度屏幕(~480dpi),建议分辨率 1080x1920 |
xxxhdpi | string | - | - | 适用于(xxxhdpi)密度屏幕(~640dpi),建议分辨率 2160x3840 |
适配支持Android12启动界面。无此配置项表示不适配支持Android12启动界面。
属性 | 类型 | 默认值 | 兼容性 | 描述 |
---|---|---|---|---|
background | string | - | - | 仅在Android12及以上设备生效,默认值为白色 |
icon | icon 配置项列表 | - | - | Android12启动界面中部Logo图标 |
brand | brand 配置项列表 | - | - | Android12启动界面底部品牌图标 |
属性 | 类型 | 默认值 | 兼容性 | 描述 |
---|---|---|---|---|
xhdpi | string | - | - | 适用于(xhdpi)密度屏幕(~320dpi),建议分辨率 480x480 |
xxhdpi | string | - | - | 适用于(xxhdpi)密度屏幕(~480dpi),建议分辨率 720x720 |
xxxhdpi | string | - | - | 适用于(xxxhdpi)密度屏幕(~640dpi),建议分辨率 960x960 |
属性 | 类型 | 默认值 | 兼容性 | 描述 |
---|---|---|---|---|
xhdpi | string | - | - | 适用于(xhdpi)密度屏幕(~320dpi),建议分辨率 400x160 |
xxhdpi | string | - | - | 适用于(xxhdpi)密度屏幕(~480dpi),建议分辨率 600x240 |
xxxhdpi | string | - | - | 适用于(xxxhdpi)密度屏幕(~640dpi),建议分辨率 800x320 |
App-Android平台发布配置
属性 | 类型 | 默认值 | 兼容性 | 描述 |
---|---|---|---|---|
minSdkVersion | integer | 21 | 应用兼容的最低Android版本(API等级);参考文档 | |
targetSdkVersion | integer | 30 | 应用适配的目标Android版本(API等级),部分应用市场要求设置较高的targetSdkVersion才能提交审核;参考文档 | |
abiFilters | Array<'armeabi-v7a' | 'arm64-v8a' | 'x86' | 'x86_64'> | ["arm64-v8a"] | 参考文档 | |
enableResourceOptimizations | boolean | - | 是否开启Android原生res资源文件优化,开启后res资源文件名称会被混淆 | |
aaptOptions | Array<string> | - | aaptOptions 配置项参考文档 | |
buildFeatures | Array<string> | - | buildFeatures 配置项参考文档 | |
packagingOptions | Array<string> | - | packagingOptions 配置项参考文档 |
注意
abiFilters
用于指定应用需要支持的CPU类型,字符串数组类型,字符串可取值"armeabi-v7a"、"arm64-v8a"、"x86"、"x86_64",默认值为["arm64-v8a"]。minSdkVersion
用于指定应用运行所需最低 API 级别的整数。如果系统的 API 级别低于该属性中指定的值,Android 系统将阻止用户安装应用。targetSdkVersion
一个用于指定应用的目标 API 级别的整数。如果未设置,其默认值与为 minSdkVersion 指定的值相等。该值用于通知系统,您已针对目标版本进行了测试,并且系统不应通过启用任何兼容性行为,以保持您的应用与目标版本的向前兼容性。minSdkVersion
和 targetSdkVersion
设置的值是 API 级别(API Level),完整API级别信息请参考Android API级别说明manifest.json中不提供配置 manifestPlaceholders
数据,如果应用使用的插件或三方SDK需要使用,可在项目的 nativeResources/android/manifestPlaceholders.json
文件中配置,详情参考Android原生应用清单文件和资源。
HBuilder4.33版本新增支持 enableResourceOptimizations 配置项
Android平台云端打包时gradle.properties的android.enableResourceOptimizations配置项,配置是否开启Android原生res资源文件优化,开启后res资源文件名称会被混淆,默认值为 ture,如不希望混淆原生res资源文件名称,可在 app -> distribute -> android 节点下配置以下字段关闭:
"enableResourceOptimizations": false
HBuilder4.31版本新增支持
Android平台云端打包时build.gradle的aaptOptions配置项,支持的属性参考:Android官方文档,如下示例源码:
"aaptOptions": [
"noCompress 'png', 'jpg', 'jpeg'" //配置禁止对 png、jpg、jpeg格式的文件进行压缩
]
云端打包默认包含以下配置:
HBuilder4.31版本新增支持
Android平台云端打包时build.gradle的buildFeatures配置项,支持的属性参考:Android官方文档,如下示例源码:
"buildFeatures": [
"viewBinding true", //开启dataBinding
"dataBinding true" //开启viewBinding
]
Android平台云端打包时build.gradle的buildFeatures配置项,支持的属性参考:Android官方文档,如下示例源码:
"packagingOptions": [
"exclude 'META-INF/LICENSE'", //排除文件META-INF/LICENSE
"exclude 'META-INF/LICENSE.txt'" //排除文件META-INF/LICENSE.txt
]
云端打包默认包含以下配置:
属性 | 类型 | 默认值 | 兼容性 | 描述 |
---|---|---|---|---|
devices | 'iphone' | 'ipad' | 'universal' | "auto" | iOS支持的设备 |
uni-app x 项目 manifest.json 文件不再提供 url scheme 配置,HBuilderX4.18及以上版本支持在 app 原生应用配置文件中进行设置,详情参考:
注意
标准基座可通过此网页体验 Url Scheme 启动 App:https://uniappx.dcloud.net.cn/scheme.html
uni-app x 项目 manifest.json 文件不再提供 iOS 平台的 通用链接(universal link)相关配置,HBuilderX4.18及以上版本支持在 iOS原生应用配置文件中通过 关联域(Associated Domains)
配置通用链接,详情参考:
注意
{
"name" : "uni-app x",
"appid" : "__UNI__XXXXXXX",
"description" : "描述信息",
"versionName" : "1.0.0",
"versionCode" : "100",
"uni-app-x":{
"flex-direction": "column"
},
"vueVersion" : "3",
"app": {
"distribute": {
"syncDebug": true,
"android": {
"packagename": "Android包名",
"abiFilters": [
"armeabi-v7a","arm64-v8a"
],
"minSdkVersion": "21",
"targetSdkVersion": "32"
}
}
}
}