Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
unidocs-zh
提交
80681c71
unidocs-zh
项目概览
DCloud
/
unidocs-zh
通知
3200
Star
106
Fork
813
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
94
列表
看板
标记
里程碑
合并请求
70
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
unidocs-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
94
Issue
94
列表
看板
标记
里程碑
合并请求
70
合并请求
70
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
80681c71
编写于
12月 15, 2023
作者:
辛宝Otto
🥊
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat(manifest): 整理 toc,整理代码高亮
上级
5accfbd5
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
51 addition
and
38 deletion
+51
-38
docs/collocation/manifest.md
docs/collocation/manifest.md
+51
-38
未找到文件。
docs/collocation/manifest.md
浏览文件 @
80681c71
...
...
@@ -2,7 +2,7 @@
`manifest.json`
文件是应用的配置文件,用于指定应用的名称、图标、权限等。HBuilderX 创建的工程此文件在根目录,CLI 创建的工程此文件在 src 目录。
##
#
配置项列表
## 配置项列表
|属性|类型|默认值|描述|最低版本|
|:-|:-|:-|:-|:-|
...
...
@@ -34,7 +34,7 @@
-
versionName在云打包App和生成wgt应用资源时会使用。如需升级App版本,先修改此处再云打包。导出wgt资源用于离线打包和热更新时也会以此版本为依据。
-
在本地打包时和热更新时,App版本和wgt应用资源版本将不再保持一致。此时通过
[
plus.runtime.version
](
https://www.html5plus.org/doc/zh_cn/runtime.html#plus.runtime.version
)
可获取App版本,通过
[
plus.runtime.getProperty
](
https://www.html5plus.org/doc/zh_cn/runtime.html#plus.runtime.getProperty
)
获取wgt资源版本。
###
#
networkTimeout
### networkTimeout
各类网络请求的超时时间,单位均为毫秒。
...
...
@@ -47,8 +47,8 @@
自
`HBuilderX 2.5.10`
起,上述默认超时时间由6秒改为60秒,对齐微信小程序平台。
### uniStatistics
#### uniStatistics
uni 统计配置项
|属性|类型|必填|默认值|说明|
...
...
@@ -73,7 +73,6 @@ uni 统计配置项
|uniStatistics|Object|
[
App 是否开启 uni 统计,配置方法同全局配置
](
/collocation/manifest?id=uniStatistics
)
|2.2.3+|
|webView|Object|当系统webview低于指定版本时,会弹出提示。或者下载x5内核后继续启动,仅Android支持,
[
详情
](
/collocation/manifest?id=appwebview
)
|3.5.0+|
PS:上表只列出了核心部分,App平台的配置其实非常多,完整内容请参考
[
完整的 manifest.json
](
/collocation/manifest-app?id=full-manifest
)
。
**Tips**
...
...
@@ -84,7 +83,6 @@ PS:上表只列出了核心部分,App平台的配置其实非常多,完整
-
部分 modules 是默认的,不需要进行配置。
-
微信小程序的
`appid`
等信息,需要配置在
`mp-weixin`
节点下。不要配置在
`app-plus`
下。
`sdkConfigs`
下出现的
`weixin`
节点,配置的是 App 的第三方 SDK 信息。
#### App Splashscreen@splashscreen
splash(启动封面)是App必然存在的、不可取消的。
...
...
@@ -97,14 +95,15 @@ splash(启动封面)是App必然存在的、不可取消的。
alwaysShowBeforeRender和autoclose属性组合设置,可配置以下三种关闭启动界面(splash)策略,
[
详见
](
tutorial/app-splashscreen
)
**注意**
-
如果不配置自己的splash图,App端会默认把App的icon放到splash中
-
splash只能是标准png,不要用jpg改名为png。也不支持gif等动画
-
相关改动,云打包生效,真机运行不生效。本地打包需自行在原生工程中配置
-
App启动图中iOS的MAX等大屏设备的splash图若不配,会导致iOS认为此App没有为MAX优化,App将无法全屏,四周会有黑边
-
Android的splash支持.9.png,
[
详见
](
tutorial/app-splashscreen?id=9png
)
#### App Modules@modules
模块选择是为了控制App的包体积,不需要的模块可以在打包时剔除。
|名称|描述|
...
...
@@ -126,6 +125,7 @@ alwaysShowBeforeRender和autoclose属性组合设置,可配置以下三种关
|VideoPlayer|视频播放|
**注意**
-
仅App云打包生效。本地打包需自行在原生工程中配置。
#### App Distribute@distribute
...
...
@@ -163,12 +163,14 @@ alwaysShowBeforeRender和autoclose属性组合设置,可配置以下三种关
|:-|:-|:-|
|subPackages|Boolean|是否开启分包优化,目前仅 uni-app vue2 下生效|
```
"app-plus": {
```
json
{
"app-plus"
:
{
"optimization"
:
{
"subPackages"
:
true
},
"runmode"
:
"liberate"
//
开启分包优化后,必须配置资源释放模式
}
}
```
...
...
@@ -177,19 +179,19 @@ alwaysShowBeforeRender和autoclose属性组合设置,可配置以下三种关
也就是一旦在pages.json里配置分包,小程序一定生效,而app是否生效,取决于manifest里是否开启。
注意:
*
App开启分包后,每个分包单独编译成一个js文件(都包含在app内,不会联网下载),当App首页是vue时,可减小启动加载文件大小,提升启动速度。
*
首页是nvue时,分包不会提升启动速度,nvue本身启动速度就快于vue,也快于开启分包后的首页为vue的应用。如果追求极致启动速度,还是应该使用nvue做首页并在manifest开启fast模式。
*
App页面较少时,分包对启动速度的优化不明显。
#### nvue@nvue
`nvue`
页面布局初始设置
|属性|类型|描述|
|:-|:-|:-|
|flex-direction|String| flex 成员项的排列方向,支持项,row:从左到右; row-reverse:从右到左;column:从上到下;column-reverse:与 column 相反,默认值 column。|
#### webview@appwebview
> uni-app 3.5.0+
...
...
@@ -213,7 +215,6 @@ x5 属性说明
|showTipsWithoutWifi|Boolean|false|是否在非WiFi网络环境时,显示用户确认下载x5内核的弹窗。(如果为true时,在非WiFi网络下载x5模块,会显示用户确认弹框,内容为
`当前处于非WiFi网络,是否允许下载x5模块?`
,false时不显示弹框 。)|
|allowDownloadWithoutWiFi|Boolean|false|是否允许用户在非WiFi网络时进行x5内核的下载。(如果为true,就不会显示用户确认的弹窗。false时,如果showTipsWithoutWifi为true,就会显示用户确认弹框;showTipsWithoutWifi为false时,不下载x5模块。)|
webview示例
```
json
...
...
@@ -234,10 +235,11 @@ webview示例
提示:vue3 vue页面 要求 Android 系统 webview 最低版本为
`64.0.3282.116`
### h5
|属性|类型|说明|
|:-|:-|:-|
|title|String|页面标题,默认使用 manifest.json 的 name|
|template|String|index.html
模板路径,相对于应用根目录,可定制生成的 html 代码。参考:
[
自定义模板
](
/collocation/manifest?id=h5-template
)
|
|template|String|index.html
模板路径,相对于应用根目录,可定制生成的 html 代码。参考:
[
自定义模板
](
/collocation/manifest?id=h5-template
)
, Vue2 支持,Vue3 暂不支持
|
|router|Object|参考:
[
router
](
/collocation/manifest?id=h5-router
)
|
|async|Object|参考:
[
async
](
/collocation/manifest?id=h5-async
)
|
|devServer|Object|开发环境 server 配置,参考:
[
devServer
](
/collocation/manifest?id=devserver
)
|
...
...
@@ -247,6 +249,9 @@ webview示例
|uniStatistics|Object|
[
H5 是否开启 uni 统计,配置方法同全局配置
](
/collocation/manifest?id=uniStatistics
)
||
#### 自定义模板@h5-template
> 目前 Vue2 支持, Vue3 暂不支持
需要使用自定义模板的场景,通常有以下几种情况:
-
调整页面 head 中的 meta 配置
...
...
@@ -254,6 +259,7 @@ webview示例
-
加入百度统计等三方js
使用自定义模板时,1. 工程根目录下新建一个html文件;2. 复制下面的基本模板内容,到这个html文件,在此基础上修改meta和引入js;3. 在
`manifest.json->h5->template`
节点中关联这个html文件的路径。
```
html
<!DOCTYPE html>
<html
lang=
"zh-CN"
>
...
...
@@ -293,6 +299,7 @@ H5平台是SPA单页应用,普通的SEO信息即加meta字段只能在,自
但SEO的时代在变,现在更有效的方式,使用uni-app同时发布一版百度小程序,这个搜索权重更高。DCloud的ask社区的H5版也是uni-app做的,同时发布了百度小程序,权重更高,每天来自百度的搜索量非常多。是一个可现身说法的好案例。
#### router@h5-router
|属性|类型|默认值|说明|
|:-|:-|:-|:-|
|mode|String|hash|路由跳转模式,支持 hash、history|
...
...
@@ -304,6 +311,7 @@ H5平台是SPA单页应用,普通的SEO信息即加meta字段只能在,自
*
`history`
模式发行需要后台配置支持,详见:
[
history 模式的后端配置
](
https://router.vuejs.org/zh/guide/essentials/history-mode.html#%E5%90%8E%E7%AB%AF%E9%85%8D%E7%BD%AE%E4%BE%8B%E5%AD%90
)
#### async@h5-async
|属性|类型|默认值|说明|
|:-|:-|:-|:-|
|loading|String|AsyncLoading|页面 js 加载时使用的组件(需注册为全局组件)|
...
...
@@ -312,6 +320,7 @@ H5平台是SPA单页应用,普通的SEO信息即加meta字段只能在,自
|timeout|Number|60000|页面 js 加载超时时间(超时后展示 error 对应的组件)|
#### devServer
|属性|类型|默认值|说明|
|:-|:-|:-|:-|
|https|Boolean|false|启用 https 协议|
...
...
@@ -321,6 +330,7 @@ H5平台是SPA单页应用,普通的SEO信息即加meta字段只能在,自
Tips:
`uni-app`
中
`manifest.json->h5->devServer`
,
`vue2`
实际上对应
`webpack`
的
[
devServer
](
https://webpack.js.org/configuration/dev-server/
)
,
`vue3`
实际上对应
`vite`
的
[
server
](
https://cn.vitejs.dev/config/server-options.html#server-options
)
,鉴于 manifest 为 json 文件,故
`webpack.config.js->devServer`
及
`vite.config.js->server`
配置项下的简单类型属性均可在
`manifest.json->h5->devServer`
节点下配置,funciton 等复杂类型暂不支持。
#### publicPath
配置 publicPath 为 cdn 资源地址前缀,这样编译出来的 html 文件,引用的 js,css 路径会自动变成 cdn 上的地址。
注意:如果想对图片生效,image组件的图片地址需要使用相对路径
...
...
@@ -335,6 +345,7 @@ Tips:`uni-app` 中 `manifest.json->h5->devServer`,`vue2` 实际上对应 `we
<script
src=
/h5/static/js/chunk-vendors.803ce52d.js
></script>
<script
src=
/h5/static/js/index.34e8497d.js
>
```
配置 publicPath 为
`https://www.cdn.com/h5/`
(无效地址仅用作示例) 后,发布时 index.html 中的结果:
```
html
...
...
@@ -343,6 +354,7 @@ Tips:`uni-app` 中 `manifest.json->h5->devServer`,`vue2` 实际上对应 `we
```
**注意**
-
打包部署后,在服务器上开启 gzip 可以进一步压缩文件。具体的配置,可以参考网上的分享:https://juejin.im/post/5af003286fb9a07aac24611b
#### sdkconfig@h5sdkconfig
...
...
@@ -360,6 +372,7 @@ Tips:`uni-app` 中 `manifest.json->h5->devServer`,`vue2` 实际上对应 `we
**示例**
```
json
{
"h5"
:
{
"sdkConfigs"
:
{
//
使用地图或位置相关功能必须填写其一
...
...
@@ -387,9 +400,8 @@ Tips:`uni-app` 中 `manifest.json->h5->devServer`,`vue2` 实际上对应 `we
}
}
}
}
```
**注意**
-
百度地图 vue2 项目暂不支持
#### optimization
...
...
@@ -406,13 +418,16 @@ Tips:`uni-app` 中 `manifest.json->h5->devServer`,`vue2` 实际上对应 `we
|enable|Boolean|false|是否启用摇树优化|
**示例:**
```
json
"h5"
:
{
{
"h5"
:
{
"optimization"
:
{
"treeShaking"
:
{
"enable"
:
true
}
}
}
}
```
...
...
@@ -441,7 +456,6 @@ Tips:关于摇树优化(treeShaking)原理及优化结果,参考:[http
|requiredPrivateInfos|Array|地理位置相关接口。
[
详见
](
https://developers.weixin.qq.com/miniprogram/dev/reference/configuration/app.html#requiredPrivateInfos
)
|
|lazyCodeLoading|String| 目前仅支持值 requiredComponents,代表开启小程序
[
按需注入
](
https://developers.weixin.qq.com/miniprogram/dev/framework/ability/lazyload.html#%E6%8C%89%E9%9C%80%E6%B3%A8%E5%85%A5
)
特性,
[
详见
](
https://developers.weixin.qq.com/miniprogram/dev/reference/configuration/app.html#lazyCodeLoading
)
|
#### setting
编译到微信小程序平台下的项目设置。
...
...
@@ -479,9 +493,7 @@ Tips:关于摇树优化(treeShaking)原理及优化结果,参考:[http
配置目录之后,需要在项目根目录新建
`vue.config.js`
配置对应的文件编译规则
```
javascript
{
plugins
:
[
new
CopyWebpackPlugin
([
{
...
...
@@ -491,7 +503,6 @@ Tips:关于摇树优化(treeShaking)原理及优化结果,参考:[http
]),
],
}
```
### mp-alipay
...
...
@@ -660,22 +671,24 @@ HBuilderX 3.6.16+ 支持项目根目录(cli 项目为 src 目录)下创建配置
**manifest.json配置**
```
json
"quickapp-webview"
:
{
//
快应用通用配置
{
"quickapp-webview"
:
{
//
快应用通用配置
"icon"
:
"/static/logo.png"
,
"package"
:
"com.example.demo"
,
"versionName"
:
"1.0.0"
,
"versionCode"
:
100
}
,
"quickapp-webview-union"
:
{
//
快应用联盟,目前仅支持
vivo、oppo
},
"quickapp-webview-union"
:
{
//
快应用联盟,目前仅支持
vivo、oppo
"minPlatformVersion"
:
1063
//最小平台支持
}
,
"quickapp-webview-huawei"
:
{
//
快应用华为
},
"quickapp-webview-huawei"
:
{
//
快应用华为
"minPlatformVersion"
:
1070
//最小平台支持
}
}
```
### FAQ
Q:iOS 应用调用相机等权限时,弹出的提示语如何修改?
A:在 manifest.json 可视化界面-App模块权限配置-iOS隐私信息访问的许可描述
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录