# manifest.json

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)配置

注意

  • appid 由 DCloud 云端分配,主要用于 DCloud 相关的云服务,请勿自行修改。详见
  • uni-app-x 节点必须存在,它是一个项目是否是 uni-app x项目的核心标识。
    • 缺少该节点时,HBuilderX 会把项目识别为 uni-app js引擎版项目(方形项目图标)。
    • 含有该节点时,HBuilderX中的项目图标是圆形的。

# UNI-APP-X配置

存在uni-app-x节点则表示为uni-app x项目

属性 类型 默认值 描述
flex-direction 'row' | 'row-reverse' | 'column' | 'column-reverse' "column" uvue页面默认flex排列方向

# APP配置

App端(原生App)配置

属性 类型 默认值 描述
distribute distribute 配置项列表 - App端发布配置

# Android权限配置

uni-app x 的权限配置,移入了AndroidManifest.xml中。

使用uni内置模块时,云端打包会自动添加模块需要的Android权限,不需要在AndroidManifest.xml中配置。

  • HBuilderX3.97+版本标准基座已经包含了所有Android权限,在 uvue 页面中直接通过 uts 调用需要权限的 Android 系统 API 时,使用标准基座真机运行可直接通过UTSAndroid.requestSystemPermission申请;
  • 使用自定义基座则需要在项目的AndroidManifest.xml中配置要使用的权限,重新提交云端打包。

# iOS隐私信息访问的许可描述

uni-app x 的隐私信息访问的许可描述配置,移入了Info.plist中。

使用uni内置模块时,云端打包回自动添加模块需要的隐私信息访问的许可描述,但许可描述信息是通用描述,不一定适合应用的实际使用场景描述,需根据应用的实际情况在Info.plist中配置准确的许可描述。

# DISTRIBUTE配置

App端发布配置

属性 类型 默认值 描述
syncDebug boolean - 是否为自定义调试基座
icons icons 配置项列表 - Android、iOS平台应用图标配置。云打包后生效,建议在HBuilderX中 manifest.json 的可视化界面操作,不推荐手动在源码视图中修改。
splashScreens splashScreens 配置项列表 - Android、iOS平台应用启动界面配置。云端打包后生效,建议在HBuilderX中 manifest.json 的可视化界面操作。
android android 配置项列表 - App-Android端发布配置
ios ios 配置项列表 - IOS配置
# App端图标配置

Android、iOS平台应用图标配置。云打包后生效,建议在HBuilderX中 manifest.json 的可视化界面操作,不推荐手动在源码视图中修改。

属性 类型 默认值 描述
android android 配置项列表 - Android图标配置
ios ios 配置项列表 - iOS图标配置

注意

  • App端图片相关配置,建议在HBuilderX中 manifest.json 的可视化界面操作,不推荐手动在源码视图中修改
  • manifest中只能配置一个icon。如需在应用发布后动态修改icon,可在插件市场搜索动态图标插件
# Android图标配置
属性 类型 默认值 描述
hdpi string - 高分屏设备程序图标,分辨率要求72x72
xhdpi string - 720P高分屏设备程序图标,分辨率要求96x96
xxhdpi string - 1080P高分屏设备程序图标,分辨率要求144x144
xxxhdpi string - 2K屏设备程序图标,分辨率要求192x192
# iOS图标配置
属性 类型 默认值 描述
appstore string - iPhone/iPad设备应用图标,分辨率要求 1024x1024
# App端启动界面配置

Android、iOS平台应用启动界面配置。云端打包后生效,建议在HBuilderX中 manifest.json 的可视化界面操作。

# Android平台启动界面配置
属性 类型 默认值 描述
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启动界面。无此配置项表示不适配支持Android12启动界面。

属性 类型 默认值 描述
background string - 仅在Android12及以上设备生效,默认值为白色
icon icon 配置项列表 - Android12启动界面中部Logo图标
brand brand 配置项列表 - Android12启动界面底部品牌图标
# Android12启动界面Logo图标配置
属性 类型 默认值 描述
xhdpi string - 适用于(xhdpi)密度屏幕(~320dpi),建议分辨率 480x480
xxhdpi string - 适用于(xxhdpi)密度屏幕(~480dpi),建议分辨率 720x720
xxxhdpi string - 适用于(xxxhdpi)密度屏幕(~640dpi),建议分辨率 960x960
# Android12启动界面底部品牌图标
属性 类型 默认值 描述
xhdpi string - 适用于(xhdpi)密度屏幕(~320dpi),建议分辨率 400x160
xxhdpi string - 适用于(xxhdpi)密度屏幕(~480dpi),建议分辨率 600x240
xxxhdpi string - 适用于(xxxhdpi)密度屏幕(~640dpi),建议分辨率 800x320
# ANDROID配置

App-Android端发布配置

属性 类型 默认值 描述
minSdkVersion integer 21 应用兼容的最低Android版本(API等级);参考文档
targetSdkVersion integer 30 应用适配的目标Android版本(API等级),部分应用市场要求设置较高的targetSdkVersion才能提交审核;参考文档
abiFilters Array<'armeabi-v7a' | 'arm64-v8a' | 'x86' | 'x86_64'> ["arm64-v8a"] 参考文档

注意

  • abiFilters 用于指定应用需要支持的CPU类型,字符串数组类型,字符串可取值"armeabi-v7a"、"arm64-v8a"、"x86"、"x86_64",默认值为["arm64-v8a"]。
  • minSdkVersion 用于指定应用运行所需最低 API 级别的整数。如果系统的 API 级别低于该属性中指定的值,Android 系统将阻止用户安装应用。
  • targetSdkVersion 一个用于指定应用的目标 API 级别的整数。如果未设置,其默认值与为 minSdkVersion 指定的值相等。该值用于通知系统,您已针对目标版本进行了测试,并且系统不应通过启用任何兼容性行为,以保持您的应用与目标版本的向前兼容性。
  • minSdkVersiontargetSdkVersion 设置的值是 API 级别(API Level),完整API级别信息请参考Android API级别说明
# IOS配置
属性 类型 默认值 描述
appid string - iOS Bundle ID

# 示例

{
    "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"
			}
		}
	}
}

# 参见

相关 Bug