提交 c4765df0 编写于 作者: Q qiang

Merge branch 'dev' into cli-i18n

# Conflicts:
#	packages/vue-cli-plugin-uni/commands/build.js
#	packages/vue-cli-plugin-uni/lib/env.js
#	yarn.lock
......@@ -19,10 +19,14 @@ packages/*/packages/mpvue
packages/*/packages/mpvue-page-factory
packages/*/packages/mpvue-template-compiler
packages/*/packages/postcss-normalize-whitespace
packages/*/packages/uni-app
packages/*/packages/uni-stat
packages/*/packages/uni-cloud
packages/*/packages/vue-loader
packages/*/packages/vue-template-compiler
packages/*/packages/webpack-preprocess-loader/preprocess
packages/*/packages/vuex
packages/*/packages/vuex3
packages/*/template/**/*
packages/uni-h5/src
packages/uni-stat
......
......@@ -6,3 +6,4 @@ unpackage/
.DS_Store
!packages/uni-app-plus/dist
package-lock.json
!packages/vue-cli-plugin-uni/packages/**/*
......@@ -65,6 +65,9 @@ module.exports = {
plugins: [
alias({
entries: [{
find: '@dcloudio',
replacement: resolve('packages')
}, {
find: 'uni-core',
replacement: resolve('src/core')
}, {
......
......@@ -57,6 +57,9 @@ module.exports = {
plugins: [
alias({
entries: [{
find: '@dcloudio',
replacement: path.resolve(__dirname, '../packages')
}, {
find: 'uni-shared/query',
replacement: path.resolve(__dirname, '../src/shared/query.js')
}, {
......
......@@ -33,6 +33,9 @@ const plugins = [{
},
alias({
entries: [{
find: '@dcloudio',
replacement: resolve('packages')
}, {
find: 'uni-core',
replacement: resolve('src/core')
}, {
......
......@@ -12,6 +12,10 @@ module.exports = {
plugins: [
alias({
entries: [{
find: '@dcloudio',
replacement: path.resolve(__dirname, '../packages')
},
{
find: 'uni-core',
replacement: path.resolve(__dirname, '../src/core')
},
......
......@@ -21,6 +21,7 @@ if (process.env.UNI_VIEW !== 'true') {
}
const alias = {
'@dcloudio': resolve('packages'),
'uni-core': resolve('src/core'),
'uni-view': resolve('src/core/view'),
'uni-service': resolve('src/core/service'),
......
......@@ -16,6 +16,7 @@ const config = service.resolveWebpackConfig()
config.resolve.alias = {
'@': resolve('src'),
'@dcloudio': resolve('packages'),
'uni-core': resolve('src/core'),
'uni-view': resolve('src/core/view'),
'uni-service': resolve('src/core/service'),
......
......@@ -31,12 +31,12 @@
<div class="barcode-img-box"><img src="//img.cdn.aliyun.dcloud.net.cn/guide/uniapp/gh_33446d7f7a26_430.jpg" width="160" /></div>
<b>微信小程序版</b>
</a>
<a href="//m3w.cn/uniapp" target="_blank" class="clear-style barcode-view">
<div class="barcode-img-box"><img src="https://bjetxgzv.cdn.bspapp.com/VKCEYUGU-uni-app-doc/30112940-bcf2-11ea-a30b-e311646dfaf2.png" width="160" /></div>
<b>支付宝小程序版</b>
</a>
</div>
<div class="flex-img-group-view" style="margin-top: 20px;">
<div class="flex-img-group-view" style="margin-top: 20px;">
<a href="//m3w.cn/uniapp" target="_blank" class="clear-style barcode-view">
<div class="barcode-img-box"><img src="https://bjetxgzv.cdn.bspapp.com/VKCEYUGU-uni-app-doc/30112940-bcf2-11ea-a30b-e311646dfaf2.png" width="160" /></div>
<b>支付宝小程序版</b>
</a>
<a href="//m3w.cn/uniapp" target="_blank" class="clear-style barcode-view">
<div class="barcode-img-box"><img src="https://bjetxgzv.cdn.bspapp.com/VKCEYUGU-uni-app-doc/e7fc6700-bcf1-11ea-b680-7980c8a877b8.png" width="160" /></div>
<b>百度小程序版</b>
......@@ -47,24 +47,30 @@
</div>
<b>字节跳动小程序版</b>
</a>
<a href="//m3w.cn/uniapp" target="_blank" class="clear-style barcode-view">
<div class="barcode-img-box">
<img src="https://img.cdn.aliyun.dcloud.net.cn/guide/uniapp/hello-uni-qq.png" width="160" />
</div>
<b>QQ小程序版</b>
</a>
<a href="//m3w.cn/uniapp" target="_blank" class="clear-style barcode-view">
<div class="barcode-img-box">
<img src="https://img.cdn.aliyun.dcloud.net.cn/guide/uniapp/hello-uni-qa-union.png" width="160" />
</div>
<b>快应用</b>
</a>
<a href="https://so.mp.360.cn/mp.html?appid=qh4j181qqtru354st6" target="_blank" class="clear-style barcode-view">
<div class="barcode-img-box">
<img src="https://img.cdn.aliyun.dcloud.net.cn/guide/uniapp/hello-uni-mp-360-qr.png" width="160" />
</div>
<b>360小程序</b>
</a>
</div>
<div class="flex-img-group-view" style="margin-top: 20px;">
<a href="//m3w.cn/uniapp" target="_blank" class="clear-style barcode-view">
<div class="barcode-img-box">
<img src="https://img.cdn.aliyun.dcloud.net.cn/guide/uniapp/hello-uni-qq.png" width="160" />
</div>
<b>QQ小程序版</b>
</a>
<a href="https://so.mp.360.cn/mp.html?appid=qh4j181qqtru354st6" target="_blank" class="clear-style barcode-view">
<div class="barcode-img-box">
<img src="https://img.cdn.aliyun.dcloud.net.cn/guide/uniapp/hello-uni-mp-360-qr.png" width="160" />
</div>
<b>360小程序</b>
</a>
<a href="//m3w.cn/uniapp" target="_blank" class="clear-style barcode-view">
<div class="barcode-img-box"><img src="https://vkceyugu.cdn.bspapp.com/VKCEYUGU-a90b5f95-90ba-4d30-a6a7-cd4d057327db/3c756de5-cd3b-4134-974b-6b41d8ea86d7.jpg" width="160" /></div>
<b>快手小程序版</b>
</a>
</div>
<p>注:<br/>
<em>- 某些平台不能提交简单demo,故补充了一些其他功能;hello uni-app示例代码可从[github](https://github.com/dcloudio/hello-uniapp)获取</em></br>
......@@ -178,4 +184,4 @@
实际运行效果如下(点击图片可放大):
![](https://bjetxgzv.cdn.bspapp.com/VKCEYUGU-uni-app-doc/4869eb60-60aa-11eb-b680-7980c8a877b8.jpg)
![](https://vkceyugu.cdn.bspapp.com/VKCEYUGU-a90b5f95-90ba-4d30-a6a7-cd4d057327db/ec6e95dd-77ad-4d14-aafa-ca503f5b9e53.jpg)
......@@ -35,6 +35,7 @@
* [统一发行页面](m3w.md)
* [案例](case.md)
* [选型评估指南](select.md)
* [应用市场上架](store.md)
* [常见问题](faq.md)
* 更新日志
* [正式版](release.md)
......@@ -81,7 +82,7 @@
<img src="https://bjetxgzv.cdn.bspapp.com/VKCEYUGU-uni-app-doc/759713d0-4f2d-11eb-a16f-5b3e54966275.png" width="20" height="20"/>
<div class="contact-smg">
<div>官方QQ交流群</div>
<div>群16:719211033 &nbsp;<a target="_blank" href="https://qm.qq.com/cgi-bin/qm/qr?k=2JJ4I0h0fi2-sPKTM2ZANX-eak6RyD41&jump_from=webapi">点此加入</a></div>
<div>群12:884860657 &nbsp;<a target="_blank" href="https://qm.qq.com/cgi-bin/qm/qr?k=JsogY994PmSrFzeSEZ6vC5dgsy3kQ-Fz&jump_from=webapi">点此加入</a></div>
<div>群35:713420817(2000人已满)</div>
<div>群34:530305531(2000人已满)</div>
<div>群33:498071674(2000人已满)</div>
......@@ -101,11 +102,11 @@
<div>群19:165657124(2000人已满)</div>
<div>群18:698592271(2000人已满)</div>
<div>群17:951348804(2000人已满)</div>
<!-- <div>群16:719211033(2000人已满)</div> -->
<div>群16:719211033(2000人已满)</div>
<div>群15:516984120(2000人已满)</div>
<div>群14:465953250(2000人已满)</div>
<div>群13:699478442(2000人已满)</div>
<div>群12:884860657(2000人已满)</div>
<!-- <div>群12:884860657(2000人已满)</div> -->
<div>群11:296811328(2000人已满)</div>
<div>群10:959059626(2000人已满)</div>
<div>群9:775128777(2000人已满)</div>
......
......@@ -93,6 +93,7 @@
* [媒体查询](api/ui/media-query-observer.md)
* [自定义组件](api/ui/nextTick.md)
* [菜单](api/ui/menuButton.md)
* [语言](api/ui/locale.md)
* 页面和窗体
* [页面](api/window/window.md)
* [页面通讯](api/window/communication.md)
......@@ -183,7 +184,7 @@
<img src="https://bjetxgzv.cdn.bspapp.com/VKCEYUGU-uni-app-doc/759713d0-4f2d-11eb-a16f-5b3e54966275.png" width="20" height="20"/>
<div class="contact-smg">
<div>官方QQ交流群</div>
<div>25:165297000 &nbsp;<a target="_blank" href="https://qm.qq.com/cgi-bin/qm/qr?k=RKv-Wgx8HXXCUOeLa6B6WeRHXdfJhXTt&jump_from=webapi">点此加入</a></div>
<div>8:695442854 &nbsp;<a target="_blank" href="https://qm.qq.com/cgi-bin/qm/qr?k=ojVbbaSsh9pdCVIgFcruPk1mcbxzG8co&jump_from=webapi">点此加入</a></div>
<div>群35:713420817(2000人已满)</div>
<div>群34:530305531(2000人已满)</div>
<div>群33:498071674(2000人已满)</div>
......@@ -194,7 +195,7 @@
<div>群28:166188776(2000人已满)</div>
<div>群27:811363410(2000人已满)</div>
<div>群26:147867597(2000人已满)</div>
<!-- <div>群25:165297000(2000人已满)</div> -->
<div>群25:165297000(2000人已满)</div>
<div>群24:672494800(2000人已满)</div>
<div>群23:599958679(2000人已满)</div>
<div>群22:687186952(2000人已满)</div>
......@@ -211,7 +212,7 @@
<div>群11:296811328(2000人已满)</div>
<div>群10:959059626(2000人已满)</div>
<div>群9:775128777(2000人已满)</div>
<div>群8:695442854(2000人已满)</div>
<!-- <div>群8:695442854(2000人已满)</div> -->
<div>群7:942061423(2000人已满)</div>
<div>群6:697264024(2000人已满)</div>
<div>群5:731951419(2000人已满)</div>
......
......@@ -9,11 +9,13 @@
内容联盟广告是一个原生全屏组件,大小不可控制
如果需要嵌入到页面控制大小请使用 [短视频内容联盟组件<ad-content-page>](https://uniapp.dcloud.net.cn/component/ad-content-page)
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√(3.1.5+)|x|x|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√(3.1.5+)|x|x|x|x|x|x|x|
**开通配置广告**
......@@ -89,4 +91,3 @@ HBuilder 基座的测试广告位 `adpid` 为 `1111111112`
}
</script>
```
......@@ -6,9 +6,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√(2.9.5+)|x|x|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√(2.9.5+)|x|x|x|x|x|x|x|
uni.createFullScreenVideoAd(Object)
......
......@@ -129,9 +129,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|App 3.1.15+|x|x|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|App 3.1.15+|x|x|x|x|x|x|x|
**开通配置广告**
......
......@@ -6,9 +6,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|App 3.1.10+|x|√|x|x|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|App 3.1.10+|x|√|x|x|x|√|x|
- app端的广告源由腾讯优量汇、头条穿山甲、快手等广告联盟提供,DCloud负责聚合
- 小程序端的广告由小程序平台提供
......
......@@ -25,9 +25,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√(2.5.11+)|x|√|x|x|√(1.57.0+)|√(0.1.26+)|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√(2.5.11+)|x|√|x|x|√(1.57.0+)|√(0.1.26+)|√|
- app端的广告源由腾讯优量汇、头条穿山甲、快手等广告联盟提供,DCloud负责聚合
- 小程序端的广告由小程序平台提供
......@@ -117,11 +117,9 @@ options 为 object 类型,属性如下:
```
### 完整调用示例
### 推荐接入示例@ad-js
支持多页面重复调用,可以传入不同广告位,默认处理了Loading状态、快速点击、数据过期、失败重试1次逻辑
推荐使用此方案
`ad.js` 是对 `uni.createRewardedVideoAd` 的封装,一个页面缓存多页面生效,避免每个页面都预载而不展示的问题,可以传入不同广告位,内部处理了Loading状态、快速点击、数据过期、失败重试1次逻辑
```html
<template>
......@@ -319,7 +317,7 @@ class AdBase {
this._isLoad = false
this.onClose(e)
})
ad.onVerify((e) => {
ad.onVerify && ad.onVerify((e) => {
// e.isValid
})
ad.onError(({
......
......@@ -2,9 +2,9 @@
监听应用要打开的页面不存在事件。该事件与 `App.onPageNotFound` 的回调时机一致
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|√|√|
#### 参数
......@@ -30,9 +30,9 @@
监听小程序错误事件。如脚本错误或 `API` 调用报错等。该事件与 `App.onError` 的回调时机与参数一致。
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|√|√|√|
#### 参数
......@@ -49,9 +49,9 @@
监听应用切前台事件。该事件与 `App.onShow` 的回调参数一致。
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|√|√|√|
**支付宝小程序使用说明:**
......@@ -88,9 +88,9 @@
监听应用切后台事件。该事件与 `App.onHide` 的回调参数一致。
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|√|√|√|
**支付宝小程序使用说明:**
......@@ -107,9 +107,9 @@
取消监听应用要打开的页面不存在事件。
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|√|√|
#### 参数
......@@ -121,9 +121,9 @@
取消监听应用错误事件。
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|√|√|√|
#### 参数
......@@ -135,9 +135,9 @@
取消监听小程序切前台事件。
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|√|√|√|
#### 参数
......@@ -149,9 +149,9 @@
取消监听小程序切后台事件。
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|√|√|√|
#### 参数
......
......@@ -4,9 +4,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|x|x|x|√|
**参数说明**
......
......@@ -4,9 +4,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|x|x|x|√|
**参数说明**
......
......@@ -2,9 +2,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|√|√|√|
App-nvue下如需使用canvas,暂未封装为uni API,可参考[文档](https://github.com/dcloudio/NvueCanvasDemo)使用。
......
......@@ -4,9 +4,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|x([CanvasContext.toTempFilePath](https://opendocs.alipay.com/mini/api/rod3ti))|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|x([CanvasContext.toTempFilePath](https://opendocs.alipay.com/mini/api/rod3ti))|√|√|√|√|
**object参数说明:**
......
......@@ -3,9 +3,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|x|
**注意:saveFile 会把临时文件移动,因此调用成功后传入的 tempFilePath 将不可用。**
......@@ -45,9 +45,9 @@ uni.chooseImage({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|x|
**OBJECT 参数说明:**
......@@ -87,9 +87,9 @@ uni.getSavedFileList({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|x|√|x|
**OBJECT 参数说明:**
......@@ -125,9 +125,9 @@ uni.getSavedFileInfo({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|x|
**OBJECT 参数说明:**
......@@ -160,16 +160,16 @@ uni.getSavedFileList({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|√|√|x|
**OBJECT 参数说明:**
|参数名|类型|默认值|必填|说明|平台差异说明|
|:-|:-|:-|:-|:-|:-|
|filePath|String||是|本地文件路径||
|digestAlgorithm|String|md5|否|计算文件摘要的算法,可取值 md5、sha1。|微信小程序|
|digestAlgorithm|String|md5|否|计算文件摘要的算法,可取值 md5、sha1。|微信小程序、App 2.9.0+|
|success|Function||否|接口调用成功的回调函数||
|fail|Function||否|接口调用失败的回调函数||
|complete|Function||否|接口调用结束的回调函数(调用成功、失败都会执行)|&nbsp;|
......@@ -180,16 +180,16 @@ uni.getSavedFileList({
|:-|:-|:-|:-|
|errMsg|String|接口调用结果||
|size|Number|文件大小,以字节为单位。||
|digest|String|按照传入的 digestAlgorithm 计算得出的的文件摘要|微信小程序|
|digest|String|按照传入的 digestAlgorithm 计算得出的的文件摘要|微信小程序、App 2.9.0+|
#### uni.openDocument(OBJECT)
新开页面打开文档,支持格式:doc, xls, ppt, pdf, docx, xlsx, pptx。
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|x|
**OBJECT 参数说明:**
......
......@@ -6,9 +6,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|x|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|x|√|√|√|
#### uni.onKeyboardHeightChange(CALLBACK)
......@@ -17,9 +17,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|HBuilderX 2.2.3+|x|基础库2.7+|x|x|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|HBuilderX 2.2.3+|x|基础库2.7+|x|x|x|√|√|
**CALLBACK 返回参数**
......@@ -41,9 +41,9 @@ uni.onKeyboardHeightChange(res => {
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|HBuilderX 3.1.0+|x|基础库2.9.2+|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|HBuilderX 3.1.0+|x|基础库2.9.2+|x|x|x|x|x|
**示例代码**
......@@ -57,9 +57,9 @@ uni.offKeyboardHeightChange(callback)
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|HBuilderX 2.8.12+|HBuilderX 2.8.12+|基础库 2.7.0+|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|HBuilderX 2.8.12+|HBuilderX 2.8.12+|基础库 2.7.0+|x|x|x|x|√|
**OBJECT 参数说明:**
......
......@@ -75,9 +75,9 @@ uni.getLocation({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|x|x|
**OBJECT 参数说明**
......
......@@ -8,9 +8,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|1.9.0+|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|1.9.0+|x|
mapContext
......
......@@ -3,9 +3,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|√|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|√|x|x|
**OBJECT 参数说明**
......
......@@ -3,9 +3,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|1.23.4+|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|1.23.4+|√|√|√|√|
**innerAudioContext 对象的属性列表**
......@@ -100,3 +100,4 @@ innerAudioContext.onError((res) => {
- 如需音频的倍速播放,可通过video的倍速播放替代实现。插件市场有封装好的插件[音频倍速播放](https://ext.dcloud.net.cn/search?q=%E9%9F%B3%E9%A2%91%E5%80%8D%E9%80%9F%E6%92%AD%E6%94%BE)
- 如果需要带ui的音频播放器样式,可以在插件市场搜索相关[插件](https://ext.dcloud.net.cn/search?q=audio)
- `Android 4.1` 及更高版本对 `PCM/WAVE` 支持范围是 `8` 位和 `16` 位线性 PCM(比特率最高可达到硬件上限)。以 8000、16000 和 44100 Hz 录制原始 PCM 所需的采样率。
......@@ -5,9 +5,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|x|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|x|√|√|√|√|x|
**backgroundAudioManager 对象的属性列表**
......@@ -58,11 +58,11 @@ errCode 说明
**示例**
```javascript
const bgAudioMannager = uni.getBackgroundAudioManager();
bgAudioMannager.title = '致爱丽丝';
bgAudioMannager.singer = '暂无';
bgAudioMannager.coverImgUrl = 'https://bjetxgzv.cdn.bspapp.com/VKCEYUGU-uni-app-doc/7fbf26a0-4f4a-11eb-b680-7980c8a877b8.png';
bgAudioMannager.src = 'https://bjetxgzv.cdn.bspapp.com/VKCEYUGU-hello-uniapp/2cc220e0-c27a-11ea-9dfb-6da8e309e0d8.mp3';
const bgAudioManager = uni.getBackgroundAudioManager();
bgAudioManager.title = '致爱丽丝';
bgAudioManager.singer = '暂无';
bgAudioManager.coverImgUrl = 'https://bjetxgzv.cdn.bspapp.com/VKCEYUGU-uni-app-doc/7fbf26a0-4f4a-11eb-b680-7980c8a877b8.png';
bgAudioManager.src = 'https://bjetxgzv.cdn.bspapp.com/VKCEYUGU-hello-uniapp/2cc220e0-c27a-11ea-9dfb-6da8e309e0d8.mp3';
```
......
......@@ -3,9 +3,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|√|√|
本API为 camera 组件配套的js API,与 camera 组件的平台兼容性相同,可实现非全屏摄像头。App端可通过[plus.camera](https://www.html5plus.org/doc/zh_cn/camera.html)实现全屏摄像头。
......
......@@ -238,9 +238,9 @@ editor 组件对应的 editorContext 实例,可通过 [uni.createSelectorQuery
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√`HBuilderX 3.0.3`|√`HBuilderX 3.0.3`|√`基础库2.8.3`|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√`HBuilderX 3.0.3`|√`HBuilderX 3.0.3`|√`基础库2.8.3`|x|x|x|x|x|
**OBJECT 参数说明**
......@@ -256,9 +256,9 @@ editor 组件对应的 editorContext 实例,可通过 [uni.createSelectorQuery
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√`HBuilderX 3.0.3`|√`HBuilderX 3.0.3`|√`基础库2.8.3`|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√`HBuilderX 3.0.3`|√`HBuilderX 3.0.3`|√`基础库2.8.3`|x|x|x|x|x|
**OBJECT 参数说明**
......@@ -274,9 +274,9 @@ editor 组件对应的 editorContext 实例,可通过 [uni.createSelectorQuery
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√`HBuilderX 3.0.3`|√`HBuilderX 3.0.3`|√`基础库2.10.2`|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√`HBuilderX 3.0.3`|√`HBuilderX 3.0.3`|√`基础库2.10.2`|x|x|x|x|x|
**OBJECT 参数说明**
......
......@@ -8,9 +8,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|√`(HBuilder X2.9.9+)`|x`(可使用wx.chooseMessageFile)`|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|√`(HBuilder X2.9.9+)`|x`(可使用wx.chooseMessageFile)`|x|x|x|x|x|
- App端如需选择非媒体文件,可在插件市场搜索[文件选择](https://ext.dcloud.net.cn/search?q=文件选择),其中Android端可以使用Native.js,无需原生插件,而iOS端需要原生插件。
- App端如果想选择下载到`_doc``_downloads``_documents`等plus.io控制的目录下的文件,可通过[plus.io Api](https://www.html5plus.org/doc/zh_cn/io.html),自己做选择框。
......@@ -94,7 +94,7 @@ uni.chooseFile({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√`(基础库2.5.0+)`|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√`(基础库2.5.0+)`|x|x|x|x|x|
......@@ -155,9 +155,9 @@ uni.chooseImage({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|√|√|√|
**OBJECT 参数说明**
......@@ -214,9 +214,9 @@ uni.chooseImage({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|√|
**OBJECT 参数说明**
......@@ -262,9 +262,9 @@ uni.chooseImage({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√(基础库版本>=3.110.3)|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√(基础库版本>=3.110.3)|√|√|√|
**OBJECT 参数说明**
......
......@@ -3,9 +3,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|见下|x|√|x|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|见下|x|√|x|√|x|√|x|
App平台的直播播放,不使用此API,而直接使用video的API。
......@@ -52,9 +52,9 @@ App平台的直播播放,不使用此API,而直接使用video的API。
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|见下|x|√|x|x|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|见下|x|√|x|x|x|√|x|
- app-nvue 平台 2.2.5+ 支持 uni.createLivePusherContext(livePusherId, this)
- app-nvue 平台 2.2.5以下,需要同时设置组件属性id和ref ``<live-pusher id="livepusher1" ref="livepusher1"></live-pusher>``,或者直接使用 ref,例如 ``this.$refs.livepusher1``
......
......@@ -3,9 +3,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|2.9.0+|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|2.9.0+|x|x|x|x|x|
#### MediaContainer.addTrack(track)
将音频或视频轨道添加到容器
......
......@@ -3,9 +3,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|x|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|x|√|√|√|x|
**recorderManager 对象的方法列表**
......@@ -23,14 +23,14 @@
**start(options) 说明**
|属性|类型|必填|说明|
|:-|:-|:-|:-|
|duration|Number|否|指定录音的时长,单位 ms ,如果传入了合法的 duration ,在到达指定的 duration 后会自动停止录音,最大值 600000(10 分钟),默认值 60000(1 分钟)|
|sampleRate|Number|否|采样率,有效值 8000/16000/44100|
|numberOfChannels|Number|否|录音通道数,有效值 1/2|
|encodeBitRate|Number|否|编码码率,有效值见下表格|
|format|String|否|音频格式,有效值 aac/mp3/wav/PCM|
|frameSize|String|否|指定帧大小,单位 KB。传入 frameSize 后,每录制指定帧大小的内容后,会回调录制的文件内容,不指定则不会回调。暂仅支持 mp3 格式。|
|属性|类型|必填|说明|平台差异说明|
|:-|:-|:-|:-|:-|
|duration|Number|否|指定录音的时长,单位 ms ,如果传入了合法的 duration ,在到达指定的 duration 后会自动停止录音,最大值 600000(10 分钟),默认值 60000(1 分钟)|App、小程序支持|
|sampleRate|Number|否|采样率,有效值 8000/16000/44100|App、小程序支持|
|numberOfChannels|Number|否|录音通道数,有效值 1/2|仅小程序支持|
|encodeBitRate|Number|否|编码码率,有效值见下表格|仅小程序支持|
|format|String|否|音频格式,有效值 aac/mp3/wav/PCM。App默认值为mp3,小程序默认值aac|App、小程序支持|
|frameSize|String|否|指定帧大小,单位 KB。传入 frameSize 后,每录制指定帧大小的内容后,会回调录制的文件内容,不指定则不会回调。暂仅支持 mp3 格式。|App、百度小程序不支持|
其中,采样率和码率有一定要求,具体有效值如下:
......
......@@ -3,9 +3,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|基础库版本>=1.10.0|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|基础库版本>=1.10.0|√|√|√|√|
**videoContext 对象的方法列表**
......@@ -17,7 +17,7 @@
|stop||停止视频|微信小程序|
|sendDanmu|danmu|发送弹幕,danmu 包含两个属性 text, color||
|playbackRate|rate|设置倍速播放,支持的倍率有 0.5/0.8/1.0/1.25/1.5。微信基础库2.6.3 起支持 2.0 倍速||
|requestFullScreen|无|进入全屏,可传入{direction}参数,详见 video 组件文档||
|requestFullScreen|无|进入全屏,可传入{direction}参数,详见 video 组件文档|H5和字节跳动小程序不支持{direction}参数|
|exitFullScreen|无|退出全屏||
|showStatusBar|无|显示状态栏,仅在iOS全屏下有效|微信小程序、百度小程序、QQ小程序|
|hideStatusBar|无|隐藏状态栏,仅在iOS全屏下有效|微信小程序、百度小程序、QQ小程序|
......
......@@ -5,9 +5,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|√|√|√|
**OBJECT 参数说明**
......@@ -84,9 +84,9 @@ export default {
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|2.10.0+|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|2.10.0+|x|x|x|x|x|
**OBJECT 参数说明**
......@@ -170,9 +170,9 @@ uni.chooseMedia({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|√|
**OBJECT 参数说明**
......@@ -239,9 +239,9 @@ export default {
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|3.1.10+|3.1.10+|2.11.0+|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|3.1.10+|3.1.10+|2.11.0+|x|x|x|x|√|
**OBJECT 参数说明**
......@@ -284,9 +284,9 @@ export default {
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|3.1.10+|x|2.11.0+|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|3.1.10+|x|2.11.0+|x|x|x|x|x|
App端有很多插件支持视频压缩,详见[插件市场](https://ext.dcloud.net.cn/search?q=%E8%A7%86%E9%A2%91%E5%8E%8B%E7%BC%A9)
......@@ -327,9 +327,9 @@ App端有很多插件支持视频压缩,详见[插件市场](https://ext.dclou
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|2.12.0+|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|2.12.0+|x|x|x|x|x|
**OBJECT 参数说明**
......
......@@ -4,9 +4,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|√|√|√|
注意:App平台的授权判断方式,另见:[https://ext.dcloud.net.cn/plugin?id=594](https://ext.dcloud.net.cn/plugin?id=594)
......
......@@ -4,9 +4,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|√|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|√|x|x|
**OBJECT参数说明**
......
......@@ -4,9 +4,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|√|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|√|x|x|
**OBJECT参数说明**
......@@ -45,9 +45,9 @@ if (uni.getExtConfig) {
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|√|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|√|x|x|
**返回值(Object)**
......
......@@ -5,9 +5,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|√|√|
**返回值**
......
......@@ -6,9 +6,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|x|√|x|
**OBJECT参数说明**
......
......@@ -46,9 +46,9 @@ uni.navigateToMiniProgram({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|√|√|√|
**OBJECT参数说明**
......
......@@ -4,9 +4,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|√|x|
**OBJECT说明**
......
......@@ -4,9 +4,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|√|√|√|
|属性|类型|必填|说明|
|---|---|---|---|---|
......@@ -35,9 +35,9 @@ uni.openSetting({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|√|√|√|
|属性|类型|默认值|必填|说明|
|---|---|---|---|---|
......
......@@ -4,9 +4,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|x|x|
**请求地址**
......@@ -66,9 +66,9 @@ POST https://openapi.baidu.com/rest/2.0/smartapp/template/templateadd?access_tok
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|x|x|
**请求地址**
```
......@@ -120,9 +120,9 @@ POST https://openapi.baidu.com/rest/2.0/smartapp/template/templatedel?access_tok
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|x|x|
**请求地址**
......@@ -229,9 +229,9 @@ POST https://openapi.baidu.com/rest/2.0/smartapp/template/libraryget?access_toke
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|x|x|
**请求地址**
......@@ -318,9 +318,9 @@ POST https://openapi.baidu.com/rest/2.0/smartapp/template/librarylist?access_tok
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|x|x|
**请求地址**
......@@ -416,9 +416,9 @@ POST https://openapi.baidu.com/rest/2.0/smartapp/template/templatelist?access_to
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|x|x|
**请求地址**
......@@ -549,9 +549,9 @@ POST https://openapi.baidu.com/rest/2.0/smartapp/template/templatedel?access_tok
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|x|√|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|x|√|x|x|x|x|
**请求地址**
......
......@@ -8,9 +8,9 @@ App的更新不使用本API,另见文档:
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|√|√|√|
**updateManager 对象的方法列表:**
......
......@@ -3,9 +3,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|√|
H5平台登录注意事项:
- 微信内嵌浏览器运行H5版时,可通过js sdk实现微信登录,需要引入一个单独的js,[详见](https://ask.dcloud.net.cn/article/35380)
......@@ -23,17 +23,20 @@ H5平台登录注意事项:
|scopes|String/Array|见平台差异说明|授权类型,默认 auth_base。支持 auth_base(静默授权)/ auth_user(主动授权) / auth_zhima(芝麻信用)|支付宝小程序|
|timeout|Number|否|超时时间,单位ms|微信小程序、百度小程序|
|univerifyStyle|Object|否|[一键登录](/univerify)页面样式|App 3.0.0+|
|onlyAuthorize|Boolean|否|`微信登录`仅请求授权认证|App 3.2.3+|
|success|Function|否|接口调用成功的回调||
|fail|Function|否|接口调用失败的回调函数||
|complete|Function|否|接口调用结束的回调函数(调用成功、失败都会执行)|&nbsp;|
**注意:** 微信登录在未配置`onlyAuthorize`的情况下调用此接口,`code`值为使用过的,用以换取`authResult`,这样会导致使用`code`去和微信换取信息时会报错。配置`onlyAuthorize`会把未使用过的`code`值返回。
**success 返回参数说明**
|参数名|说明|
|:-|:-|
|authResult|登录服务商提供的登录信息,服务商不同返回的结果不完全相同|
|code|小程序专有,用户登录凭证。开发者需要在开发者服务器后台,使用 code 换取 openid 和 session_key 等信息|
|errMsg|描述信息|
|参数名|说明|平台差异说明|
|:-|:-|:-|
|authResult|登录服务商提供的登录信息,服务商不同返回的结果不完全相同|微信登录配置`onlyAuthorize`则此项为空,App 3.2.3+ |
|code|用户登录凭证。开发者需要在开发者服务器后台,使用 code 换取 openid 和 session_key 等信息|微信登录配置`onlyAuthorize`code值有效,App 3.2.3+ |
|errMsg|描述信息||
各个平台的登录流程存在差异,详细请参考相关平台的文档说明:
......@@ -68,9 +71,9 @@ uni.login({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|√|√|√|√|
|属性|类型|必填|说明|
|:-|:-|:-|:-|
......@@ -85,9 +88,9 @@ uni.login({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|√|
**注意:** 微信小程序端,在用户未授权过的情况下调用此接口,不会出现授权弹窗,会直接进入 fail 回调(详见[《微信小程序公告》](https://developers.weixin.qq.com/community/develop/doc/0000a26e1aca6012e896a517556c01))。在用户已授权的情况下调用此接口,可成功获取用户信息。
......@@ -250,9 +253,9 @@ uni.login({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|3.0.0+|x|x|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|3.0.0+|x|x|x|x|x|x|x|
**OBJECT 参数说明**
......@@ -269,6 +272,31 @@ uni.login({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|3.0.0+|x|x|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|3.0.0+|x|x|x|x|x|x|x|
### uni.getCheckBoxState(OBJECT)
获取[一键登录](/univerify)条款勾选框状态。
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|3.2.3+|x|x|x|x|x|x|x|
**OBJECT 参数说明**
|参数名|类型|必填|说明|
|:-|:-|:-|:-|
|success|Function|否|接口调用成功的回调|
|fail|Function|否|接口调用失败的回调函数|
|complete|Function|否|接口调用结束的回调函数(调用成功、失败都会执行)|
**success 返回参数说明**
|参数|类型|说明|
|:-|:-|:-|
|state|Boolean|一键登录条款勾选框状态|
|errMsg|String|描述信息|
\ No newline at end of file
......@@ -15,9 +15,9 @@ uni.requestPayment是一个统一各平台的客户端支付API,不管是在
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|[说明](/api/plugins/payment?id=h5-payment)|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|[说明](/api/plugins/payment?id=h5-payment)|√|√|√|√|√|√|
**OBJECT 参数说明**
......
......@@ -17,9 +17,9 @@ uni-app的App引擎已经封装了微信、QQ、微博的分享SDK,开发者
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|x|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|x|x|x|x|x|x|
**OBJECT 参数说明**
......@@ -279,6 +279,9 @@ uni.share({
|summary |String |- |分享的文字内容 |
|href |String |- |分享链接,ios端分享到微信时必填此字段 |
|imageUrl |String |- |分享图片,仅支持本地路径 |
|success|Function|否|接口调用成功的回调|
|fail|Function|否|接口调用失败的回调函数|
|complete|Function|否|接口调用结束的回调函数(调用成功、失败都会执行)|
**注意事项**
......@@ -311,9 +314,9 @@ App端可调用手机的系统分享,实现所有注册分享的应用的呼
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|x|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|x|x|x|x|x|x|
说明:
调用系统分享组件分享消息,通过msg参数设置分享内容。 发送成功后通过successCB回调函数通知操作完成,发送失败则通过errorCB回调返回。
......@@ -358,9 +361,9 @@ App端可调用手机的系统分享,实现所有注册分享的应用的呼
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|x|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|x|√|√|√|
|参数|类型|说明|平台差异说明|
......
**一键生成iOS通用链接**
#### 背景介绍:
> Universal Link是苹果在WWDC 2015上提出的iOS 9的新特性之一。此特性类似于深层链接,并能够方便地通过打开一个Https链接来直接启动您的客户端应用(手机有安装App)。对比以往所使用的URLSheme, 这种新特性在实现web-app的无缝链接时,能够提供极佳的用户体验。
使用前请阅读[苹果官方文档](https://developer.apple.com/library/archive/documentation/General/Conceptual/AppSearch/UniversalLinks.html#//apple_ref/doc/uid/TP40016308-CH12-SW1)
> 使用前请阅读[苹果官方文档](https://developer.apple.com/library/archive/documentation/General/Conceptual/AppSearch/UniversalLinks.html#//apple_ref/doc/uid/TP40016308-CH12-SW1)。
> 由于苹果iOS 13系统版本安全升级,微信SDK1.8.6版本要求支持Universal Links方式跳转,以便进行合法性校验,提升安全性。更多详情请参考[微信官方说明](https://developers.weixin.qq.com/doc/oplatform/Mobile_App/Access_Guide/iOS.html)
大白话:以前你的APP要打开其他APP是[通过URLScheme](http://www.html5plus.org/doc/zh_cn/runtime.html#plus.runtime.launchApplication)实现,后来苹果提出用Https链接来启动,手机上对应的app(已安装),更方便与web-app的无缝对接。微信响应了这个方案。所以大家开发的APP无论是微信登陆、微信支付,还是微信分享等一切会跳转到微信,再跳回来的场景,需要提供这个链接。要不然你的应用打开了微信,微信就打不开你的应用。
如果不配置通用链接,使用新版本HX提交云端打包会失败,提示以下错误信息:
```javascript
``` javascript
Error code = -5000
Error message:
Error: not set parameter 'UniversalLinks' @'oauth-weixin'
```
传统方式配置通用链接需要:
1. 在苹果开发者中心:开启Associated Domains服务
2. 获取相关参数,手动创建apple-app-site-association文件
3. 部署apple-app-site-association文件到自己的云服务器,配置SSL证书解析域名
......@@ -24,57 +28,82 @@ Error: not set parameter 'UniversalLinks' @'oauth-weixin'
其中需要注意的细节较多,且调试起来困难繁琐,困扰了大量开发者。
现在通过HbuilderX(3.1.9版起)云打包,支持自动生成apple-app-site-association文件,并自动托管到:自带cdn、ssl等服务的“免费”的云服务空间[uniCloud的前端网页托管](https://uniapp.dcloud.io/uniCloud/hosting),自动完成manifest.json中的相关配置。用自动化技术替代了,如上所示传统方式令人苦恼的(2-5)4个步骤;只需如下三步直接搞定通用链接。
现在通过HBuilderX(3.1.9版起)云打包,支持自动生成apple-app-site-association文件,并自动托管到:自带cdn、ssl等服务的“免费”的云服务空间[uniCloud的前端网页托管](https://uniapp.dcloud.io/uniCloud/hosting),自动完成manifest.json中的相关配置。用自动化技术替代了,如上所示传统方式令人苦恼的(2-5)4个步骤;只需如下三步直接搞定通用链接。
#### 第一步:开启Associated Domains服务
登录[苹果开发者网站](https://developer.apple.com/),在“Certificates, Identifiers & Profiles”页面选择“Identifiers”中选择对应的App ID,确保开启Associated Domains服务
![](https://vkceyugu.cdn.bspapp.com/VKCEYUGU-f184e7c3-1912-41b2-b81f-435d1b37c7b4/2eae9f97-2c4a-4dc8-97e8-e665b0c660e1.png)
**开启Associated Domains服务后需要重新生成profile文件,提交云端打包时使用**
#### 第二步骤 自动生成通用连接(Universal Links)
HBuilderX (3.2.0 版本起) 新增QQ互联和新浪微博开放平台的通用链接的设置。以微信模块为例,QQ与微博与之类似。
打开项目的manifest.json文件,在“(App) SDK配置”项中的微信登录(微信分享、微信支付)下的“iOS平台通用链接(Universal Links)”中,
点击如图所示【自动生成】
![](https://vkceyugu.cdn.bspapp.com/VKCEYUGU-f184e7c3-1912-41b2-b81f-435d1b37c7b4/ea2b1e04-a858-4626-b3fa-bd4ddddd0c3b.jpg)
* 注意您必须先开通"uniCloud(阿里云版)云服务空间和开通前端网页托管"[点此查看开通教程](https://ask.dcloud.net.cn/article/38951),按提示完成操作即可。
![](https://vkceyugu.cdn.bspapp.com/VKCEYUGU-f184e7c3-1912-41b2-b81f-435d1b37c7b4/53e0141e-d2d4-496a-b0f2-2359005c0c4e.jpg)
* 注意:通用链接默认域名仅供测试使用,访问频次限制60次/分钟,请勿在正式发行的项目中使用。
* 如何绑定自己的域名详情:[https://uniapp.dcloud.io/uniCloud/hosting?id=domain](https://uniapp.dcloud.io/uniCloud/hosting?id=domain)
![](https://vkceyugu.cdn.bspapp.com/VKCEYUGU-f184e7c3-1912-41b2-b81f-435d1b37c7b4/1e081fdd-27b2-4c0b-8985-7d59756ed313.jpg)
#### 第三步:在第三方开放平台配置通用链接
#### 第三步:在微信开放平台配置通用链接
打开微信[开发平台](https://open.weixin.qq.com/),在“管理中心”页面的“移动应用”下找到已经申请的应用(没有申请应用请点击“创建移动应用”新建应用),点击“查看”打开应用详情页面。
##### 微信
打开微信[开放平台](https://open.weixin.qq.com/),在“管理中心”页面的“移动应用”下找到已经申请的应用(没有申请应用请点击“创建移动应用”新建应用),点击“查看”打开应用详情页面。
在“开发信息”栏后点击修改,在“iOS应用”下的“Universal Links”项中配置应用的通用链接,如下图所示:
![](https://img-cdn-tc.dcloud.net.cn/uploads/article/20191008/e933f7ef8ff078bf05e28a24efee74bd.png)
##### QQ
打开QQ[开放平台](https://connect.qq.com/index.html),在“管理中心”页面的“移动应用”下找到已经申请的应用(没有申请应用请点击“创建移动应用”新建应用),点击“查看”打开应用详情页面。
在“开发信息”栏后点击修改,在“iOS应用”下的“Universal Links”项中配置应用的通用链接,如下图所示:
![](https://dcloud-img.oss-cn-hangzhou.aliyuncs.com/client/ulink/QQ.jpeg)
* 注意:QQ开放平台在填写时 只需要填写到host,后边的path QQ会自动生成,比如 HBuilder中一键生成 ```[https://static-fa42aa5f-xxxxxxx-xxxxxxxx.bspapp.com/qq\_conn/11111233333/](https://static-fa42aa5f-xxxxxxx-xxxxxxxx.bspapp.com/qq_conn/11111233333/)``` 只需要填写 ```[https://static-fa42aa5f-xxxxxxx-xxxxxxxx.bspapp.com/](https://static-fa42aa5f-xxxxxxx-xxxxxxxx.bspapp.com/)```,具体请查看 [QQ 填写及校验universallinks](https://wiki.connect.qq.com/%E5%A1%AB%E5%86%99%E5%8F%8A%E6%A0%A1%E9%AA%8Cuniversallinks)
##### 微博
打开微博[开放平台](https://open.weibo.com/),在“我的应用”下找到已经申请的应用,点击“查看”打开应用详情页面。
在“应用信息”栏后点击修改,在“iOS应用”下的“Universal Links”项中配置应用的通用链接,如下图所示:![](https://dcloud-img.oss-cn-hangzhou.aliyuncs.com/client/ulink/weibo.jpeg)
至此,就已经完成了通用链接的配置全过程,云打包后生效。
#### 其他相关
##### 客户端处理通用链接。
可通过5+ API的plus.runtime.launcher判断应用启动来源,如果其值为"uniLink"则表示通过通用链接启动应。这时可通过5+ API的plus.runtime.arguments获取启动参数,通用链接启动的情况将返回完整的通用链接地址。
例:HBuilderX中自带的默认真机运行基座HBuilderX注册的通用链接:[https://demo.dcloud.net.cn/ulink/](https://demo.dcloud.net.cn/ulink/)
##### 通用链接生成原理:
1. 选择云空间获取云空间的默认/自定义域名
2. 按提前制定的规范(uni-universallinks/DCloud appid)拼接URL
3. 根据现有参数自动生成通用链接相关参数到manifest.json
4. 发起云打包时读取证书的profile文件生成apple-app-site-association并部署到前面选定的云空间根目录的.well-known目录下(请勿删除该文件,否则通用链接将失效)
###### 注意事项:
- 通用链接指向的路径可以为空,他只是一种信息传递方式。可以简单地理解为:通过解析URL的“/”后的参数到apple-app-site-association中找到指定的包名并唤醒对应的APP
- 通用链接内容保存在manifest.json中"云打包后生效",被手机读取的时机是应用被安装的时候。如果你的通用链接内容有变化,你需要重新提交云打包,并重新安装一次应用才能生效
- 通用链接最终托管在服务端,如有变动注意缓存的清理,例如尝试重启手机等操作
>如果你是本地离线打包或者由于某种原因你需要用传统的方式:私有化部署服务器来托管apple-app-site-association文件创建通用链接。你仍然可以通过手动配置manifest.json实现。详情:[https://ask.dcloud.net.cn/article/36393#unilink](https://ask.dcloud.net.cn/article/36393#unilink)
* 通用链接指向的路径可以为空,他只是一种信息传递方式。可以简单地理解为:通过解析URL的“/”后的参数到apple-app-site-association中找到指定的包名并唤醒对应的APP
* 通用链接内容保存在manifest.json中"云打包后生效",被手机读取的时机是应用被安装的时候。如果你的通用链接内容有变化,你需要重新提交云打包,并重新安装一次应用才能生效
* 通用链接最终托管在服务端,如有变动注意缓存的清理,例如尝试重启手机等操作
> 如果你是本地离线打包或者由于某种原因你需要用传统的方式:私有化部署服务器来托管apple-app-site-association文件创建通用链接。你仍然可以通过手动配置manifest.json实现。详情:[https://ask.dcloud.net.cn/article/36393#unilink](https://ask.dcloud.net.cn/article/36393#unilink)
##### 常见问题
1. 为什么我打开通用链接提示:`The requested file was not found on this server.`
1.为什么我打开通用链接提示:`The requested file was not found on this server.`
这是正常现象。通用链接并不要求是一个有效的路径,换句话说这个链接指向的目录允许为空。原理是访问这个链接时,iphone检测到当前域名为通用链接对应的域名,就读取域名服务器下的apple-app-site-association,然后根据域名后面的路径名称,验证并解析出要打开的app包名并唤醒对应的app。
2. 如何验证通用链接已经生效,有什么表现或者测试方案
2.如何验证通用链接已经生效,有什么表现或者测试方案
你可以将通用链接输入到iphone自带Safari浏览器中,下拉即可看到通用链接对应到应用名称和一个打开按钮,点击按钮即可直接在浏览器打开对应的APP。详情:[点此查看演示视频](https://vkceyugu.cdn.bspapp.com/VKCEYUGU-f184e7c3-1912-41b2-b81f-435d1b37c7b4/4e920b86-0f67-45ac-81f6-6b97f87ff0ae.mp4)
\ No newline at end of file
......@@ -28,9 +28,9 @@ uni.onAccelerometerChange(function (res) {
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|HBuilderX 2.9.6+|HBuilderX 2.9.6+|基础库 2.9.3+|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|HBuilderX 2.9.6+|HBuilderX 2.9.6+|基础库 2.9.3+|x|x|x|x|√|
### uni.startAccelerometer(OBJECT)
开始监听加速度数据。
......
......@@ -3,9 +3,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|x|
**OBJECT 参数说明**
......
**低功耗蓝牙 API 平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|x|x|x|x|
### uni.setBLEMTU(OBJECT)
......
**蓝牙 API 平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|x|x|x|x|
### uni.openBluetoothAdapter(OBJECT)
......
......@@ -3,9 +3,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|x|√|√|
**OBJECT 参数说明**
......@@ -34,9 +34,9 @@ uni.setScreenBrightness({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|x|√|√|
**OBJECT 参数说明**
......@@ -67,9 +67,9 @@ uni.getScreenBrightness({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|√|√|√|
**OBJECT 参数说明**
......
......@@ -4,9 +4,11 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|√|√|√|
注:App没有内置截屏相关功能,可以在插件市场搜索相关插件,[详见](https://ext.dcloud.net.cn/search?q=%E6%88%AA%E5%B1%8F)
**CALLBACK返回参数:**
......
**剪贴板 API 平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|√|√|√|
### uni.setClipboardData(OBJECT)
设置系统剪贴板的内容。
......
......@@ -23,9 +23,9 @@ uni.onCompassChange(function (res) {
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|HBuilderX 2.9.6+|HBuilderX 2.9.6+|基础库 2.9.3+|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|HBuilderX 2.9.6+|HBuilderX 2.9.6+|基础库 2.9.3+|x|x|x|x|√|
**Tips**
- `CALLBACK`为调用`uni.onCompassChange`时传入的`CALLBACK`
......@@ -35,9 +35,9 @@ uni.onCompassChange(function (res) {
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|x|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|x|√|√|√|√|
**OBJECT 参数说明**
......
......@@ -5,9 +5,9 @@ App平台提供了更多通讯录相关API,包括读取联系人,详见:[h
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|√|x|x|√|
**OBJECT 参数说明**
......
**iBeacon API 平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|x|√|√|x|x|x|x|
### uni.onBeaconServiceChange(CALLBACK)
......
......@@ -6,9 +6,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|√|√|x|√|√|
**CALLBACK返回参数:**
......
......@@ -61,9 +61,9 @@ uni.onNetworkStatusChange(function (res) {
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|HBuilderX 3.0.1+|HBuilderX 3.0.1+|基础库 2.9.3+|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|HBuilderX 3.0.1+|HBuilderX 3.0.1+|基础库 2.9.3+|x|x|x|x|√|
**Tips**
- `CALLBACK`必须为调用`uni.onNetworkStatusChange`时传入的`CALLBACK`
......
......@@ -11,9 +11,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|√|x|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|√|x|x|x|x|x|x|
**代码示例**
......@@ -29,9 +29,9 @@ uni.getTopWindowStyle()
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|√|x|x|x|x|x|
|x|√|x|x|x|x|x|x|
**代码示例**
......@@ -47,9 +47,9 @@ uni.getLeftWindowStyle()
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|√|x|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|√|x|x|x|x|x|x|
**代码示例**
......@@ -86,9 +86,9 @@ uni.setTopWindowStyle({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|√|x|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|√|x|x|x|x|x|x|
**OBJECT 参数说明**
......@@ -113,9 +113,9 @@ uni.setLeftWindowStyle({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|√|x|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|√|x|x|x|x|x|x|
**OBJECT 参数说明**
......
......@@ -4,9 +4,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|HBuilderX 2.0.4+|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|HBuilderX 2.0.4+|√|√|√|√|√|x|
**注意:**
- export 方法每次调用后会清掉之前的动画操作
......
......@@ -4,9 +4,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|√|√|
**参数说明**
......@@ -35,9 +35,9 @@ uni.setBackgroundColor({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|√|√|
**参数说明**
......
### uni.getLocale()
获取当前设置的语言
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|华为快应用|360小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|x|x|x|x|x|x|x|
如果当前应用设置过语言,会获取到之前设置的语言,未设置会使用系统语言。
### uni.setLocale(locale)
设置当前语言
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|华为快应用|360小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|x|x|x|x|x|x|x|
**参数说明**
|参数名|类型|必填|
|:-|:-|:-|
|locale|String|是|
#### 提示
* 组件和接口显示会根据设置的语言环境自动切换,未支持的系统语言环境会显示为英文。
* 框架内置如下语言:
* 英语 en
* 中文简体 zh-Hans
* 繁体 zh-Hant
* 法语 fr
* 西班牙语 es
*[manifest.json](/collocation/manifest) -> locale 可以配置应用的默认语言。
\ No newline at end of file
......@@ -30,9 +30,9 @@ uni.setNavigationBarTitle({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|√|√|√|
**OBJECT参数说明**
......@@ -90,9 +90,9 @@ uni.setNavigationBarColor({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|√|√|√|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|√|√|√|√|x|√|√|
App平台调用此API时会在屏幕中间悬浮显示loading
......@@ -116,9 +116,9 @@ uni.showNavigationBarLoading()
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|√|√|√|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|√|√|√|√|x|√|√|
App平台调用此API时会关闭屏幕中间悬浮显示的loading
......@@ -143,9 +143,9 @@ uni.hideNavigationBarLoading()
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|x|1.48.0+|1.10.0+|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|x|1.48.0+|1.10.0+|x|
**OBJECT参数说明**
......
......@@ -112,9 +112,9 @@ query.select('#id').boundingClientRect(data => {
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|HBuilderX 2.4.7+|√|x|x|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|HBuilderX 2.4.7+|√|x|x|x|√|√|
**callback 返回参数**
......@@ -128,9 +128,9 @@ query.select('#id').boundingClientRect(data => {
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|x|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|x|x|√|√|
**callback 返回参数**
......
......@@ -21,6 +21,7 @@
|值|说明|平台差异说明|
|:-|:-|:-|
|success|显示成功图标,此时 title 文本最多显示 7 个汉字长度。默认值||
|error|显示错误图标,此时 title 文本最多显示 7 个汉字长度。||
|loading|显示加载图标,此时 title 文本最多显示 7 个汉字长度。|支付宝小程序不支持|
|none|不显示图标,此时 title 文本在`小程序`最多可显示两行,`App`仅支持单行显示。|&nbsp;|
......
......@@ -4,9 +4,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√(钉钉小程序不支持)|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√(钉钉小程序不支持)|√|x|√|√|
**OBJECT参数说明:**
......@@ -38,9 +38,9 @@ uni.setTabBarItem({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|√|
**OBJECT参数说明:**
......@@ -88,9 +88,9 @@ uni.setTabBarStyle({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|√|
**OBJECT参数说明:**
......@@ -107,9 +107,9 @@ uni.setTabBarStyle({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|√|
**OBJECT参数说明:**
......@@ -125,9 +125,9 @@ uni.setTabBarStyle({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|√|
**OBJECT参数说明:**
......@@ -153,9 +153,9 @@ uni.setTabBarBadge({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|√|
**OBJECT参数说明:**
......@@ -171,9 +171,9 @@ uni.setTabBarBadge({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|√|
**OBJECT参数说明:**
......@@ -189,9 +189,9 @@ uni.setTabBarBadge({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|√|
**OBJECT参数说明:**
......@@ -207,9 +207,9 @@ uni.setTabBarBadge({
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√(HBuilderX 2.3.4+)|x|x|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√(HBuilderX 2.3.4+)|x|x|x|x|x|x|x|
**Tip**
......
......@@ -3,7 +3,7 @@
目前需分平台编写
- 微信小程序:[规范详情](https://developers.weixin.qq.com/miniprogram/dev/api/worker/wx.createWorker.html)
- 字节跳动小程序:[规范详情](https://developer.toutiao.com/docs/game/worker/tt.createWorker.html)
- 字节跳动小程序:[规范详情](https://microapp.bytedance.com/docs/zh-CN/mini-game/develop/api/worker/tt-create-worker)
- QQ小程序:[规范详情](https://q.qq.com/wiki/develop/miniprogram/API/worker/worker.html)
- H5:标准H5的worker仍然可以使用
- App:App的js是在独立的jscore运行的,如果需要在另一个线程运行js,可以使用web-view组件或renderjs,这样的js运行在webview里,和jscore里的js是两个线程。但注意多个webview之间的js是一个进程,使用webview里的js时注意会影响视图层的渲染。
## 背景
为有效治理App强制授权、过度索权、超范围收集个人信息等现象,落实《网络安全法》《消费者权益保护法》的要求,保障个人信息安全,2019年1月,中央网信办、工信部、公安部、市场监管总局等四部委发布了《关于开展App违法违规收集使用个人信息专项治理的公告》,在全国范围组织开展App违法违规收集使用个人信息专项治理,并陆续出台完善了《App违法违规收集使用个人信息行为认定方法》、《GB/T 35273-2020 信息安全技术 个人信息安全规范》等标准规范。
根据以上规范要求,各大应用市场都加强应用的检测,要求应用必须符合相关政策,否则应用将有被通报或下架的风险。
目前开发者最常碰到的以下问题:
- 违规收集个人信息
- 强制、频繁、过度索取权限
针对以上问题,请参考下文的解决方案,务必仔细阅读,注意各细节问题。
**`首先碰到此问题请更新到HbuilderX3.1.22及以上版本`**
## 如何解决"违规收集个人信息"问题
关于收集个人信息问题,首先应用必须配置“隐私与政策”协议框,其次必须在“隐私与政策”非常清楚、全面地说明(不要用可能收集、了解用户信息这种模糊不清晰的词语)收集用户个人信息的目的、方式和范围,用户个人信息包括但不限于mac地址、设备序列号、imei、imsi、软件安装列表、通讯录信息、短信信息等。
**注意:根据政策要求隐私提示框显示之前不能调用涉及个人信息相关API(如设备标识),因此需要更新到HBuilderX3.1.22及以上版本重新提交云端打包**
### 第一步:配置隐私与政策提示框
必须确保应用存在《隐私政策》,在应用首次启动时弹出提示并取得用户同意。
**注意:一定要配置使用“template”模式隐私与政策提示框,详情参考[https://ask.dcloud.net.cn/article/36937](https://ask.dcloud.net.cn/article/36937)**
### 第二步:在隐私政策中添加DCloud相关条款
请在《隐私政策》中必告知用户您的应用基于DCloud uni-app(5+ App/Wap2App)开发,添加如下参考条款:
`我们的产品基于DCloud uni-app(5+ App/Wap2App)开发,应用运行期间需要收集您的设备唯一识别码(IMEI/android ID/DEVICE_ID/IDFA、SIM 卡 IMSI 信息)以提供统计分析服务,并通过应用启动数据及异常错误日志分析改进性能和用户体验,为用户提供更好的服务。`
### 第三步:在隐私政策中添加其它三方SDK的条款
#### uni-app默认集成三方SDK
|SDK名称|SDK包名|SDK用途|可能获取的个人信息类型|调用的设备权限|官网链接|
|:----|:----|:----|:----|:----|:----
|阿里weexSDK|com.taobao|uni-app基础模块默认集成,用于渲染uniapp的nvue页面引擎|存储的个人文件|读取外置存储器、写入外置存储器|[http://doc.weex.io/zh](http://doc.weex.io/zh/)|
|fresco图片库|com.facebook.fresco|uni-app基础模块默认集成,用于nvue页面加载图片使用|存储的个人文件|读取外置存储器、写入外置存储器|[https://www.fresco-cn.org/](https://www.fresco-cn.org/)|
#### UniPush
UniPush是DCloud联合个推公司推出的集成型统一推送服务,使用了个推提供的SDK,因此需要在《隐私政策》中添加“个推消息推送SDK”相关说明。
建议《隐私政策》添加 “与授权合作伙伴共享”条款中,将 个推的用户隐私政策 加入其中,并向终端用户逐一明示您嵌入的SDK收集使用个人信息的目的、方式和范围。参考内容如下:
`消息推送服务供应商:由每日互动股份有限公司提供推送技术服务,我们可能会将您的设备平台、设备厂商、设备品牌、设备识别码等设备信息,应用列表信息、网络信息以及位置相关信息提供给每日互动股份有限公司,用于为您提供消息推送技术服务。我们在向您推送消息时,我们可能会授权每日互动股份有限公司进行链路调节,相互促活被关闭的SDK推送进程,保障您可以及时接收到我们向您推送的消息。详细内容请访问《个推用户隐私政策》(需将《个推用户隐私政策》超链至:http://docs.getui.com/privacy)`
UniPush模块集成的三方SDK说明
|SDK名称|SDK包名|SDK用途|可能获取的个人信息类型|调用的设备权限|SDK隐私政策链接|
|:----|:----|:----|:----|:----|:----
|个推|com.getui.gtc 、com.igexin.sdk|UniPush推送|网络信息、IMEI、openid|获取网络状态、访问Wi-Fi状态、读取手机状态和身份|[https://docs.getui.com/privacy/](https://docs.getui.com/privacy/)
#### Statistic
HX3.1.14+ 友盟SDK已升级到9.3.8版本 适配合规问题
+ 当你集成了统计模块。您需要确保App有《隐私政策》,并且在用户首次启动App时就弹出《隐私政策》取得用户同意!!!
+ 您务必告知用户您选择友盟+SDK服务,请在《隐私政策》中增加如下参考条款:“我们的产品集成友盟+SDK,友盟+SDK需要收集您的设备Mac地址、唯一设备识别码(IMEI/android ID/IDFA/OPENUDID/GUID、SIM 卡 IMSI 信息)以提供统计分析服务,并通过地理位置校准报表数据准确性,提供基础反作弊能力。”
+ 您务必确保用户同意《隐私政策》之后。再调用相关api!!!!
Statistic模块集成的三方SDK说明
|SDK名称|SDK包名|SDK用途|可能获取的个人信息类型|调用的设备权限|SDK隐私政策链接|
|:----|:----|:----|:----|:----|:----
|友盟|com.uc.crashsdk、com.efs、com.umeng|统计|网络信息、IMEI、openid|获取网络状态、访问Wi-Fi状态、读取手机状态和身份|[https://developer.umeng.com/docs/...](https://developer.umeng.com/docs/119267/detail/182050)
#### OAuth
OAuth模块集成的三方SDK说明
|SDK名称|SDK包名|SDK用途|可能获取的信息类型|调用的设备权限|SDK隐私政策链接|
|:----|:----|:----|:----|:----|:----
|微信|com.tencent.mm|微信登录|存储的个人文件|读取外置存储器、写入外置存储器|[https://weixin.qq.com/cgi-bin/readtemplate?lang=zh_CN&t=weixin_agreement&s=privacy](https://weixin.qq.com/cgi-bin/readtemplate?lang=zh_CN&t=weixin_agreement&s=privacy)|
|新浪微博|com.sina.weibo|新浪微博登录|存储的个人文件、IMEI、openid|读取外置存储器、写入外置存储器|[https://weibo.com/signup/v5/privacy?spm=a1zaa.8161610.0.0.4f8776217Wu8R1](https://weibo.com/signup/v5/privacy?spm=a1zaa.8161610.0.0.4f8776217Wu8R1)|
|QQ登录|com.tencent.open|QQ登录|IMEI、openid、位置信息|访问粗略位置、访问精准定位、后台访问地理位置、读取外置存储器、写入外置存储器、读取手机状态和身份|[https://ti.qq.com/agreement/qqface.html?appname=mqq_2019](https://ti.qq.com/agreement/qqface.html?appname=mqq_2019)|
|个验一键登录|com.g.elogin、com.g.gysdk|一键登录|运营商信息|读取外置存储器、写入外置存储器|[https://docs.getui.com/privacy/](https://docs.getui.com/privacy/)|
#### Share
Share模块集成的三方SDK说明
|SDK名称|SDK包名|SDK用途|可能获取的信息类型|调用的设备权限|SDK隐私政策链接|
|:----|:----|:----|:----|:----|:----
|微信|com.tencent.mm|微信分享|存储的个人文件|读取外置存储器、写入外置存储器|[https://weixin.qq.com/cgi-bin/readtemplate?lang=zh_CN&t=weixin_agreement&s=privacy](https://weixin.qq.com/cgi-bin/readtemplate?lang=zh_CN&t=weixin_agreement&s=privacy)|
|新浪微博|com.sina.weibo|新浪微博分享|存储的个人文件、IMEI、openid|读取外置存储器、写入外置存储器|[https://weibo.com/signup/v5/privacy?spm=a1zaa.8161610.0.0.4f8776217Wu8R1](https://weibo.com/signup/v5/privacy?spm=a1zaa.8161610.0.0.4f8776217Wu8R1)|
|QQ|com.tencent.open|QQ分享|IMEI、openid、位置信息|访问粗略位置、访问精准定位、后台访问地理位置、读取外置存储器、写入外置存储器、读取手机状态和身份|[https://ti.qq.com/agreement/qqface.html?appname=mqq_2019](https://ti.qq.com/agreement/qqface.html?appname=mqq_2019)|
#### Payment
Payment模块集成的三方SDK说明
|SDK名称|SDK包名|SDK用途|可能获取的信息类型|调用的设备权限|SDK隐私政策链接|
|:----|:----|:----|:----|:----|:----
|微信|com.tencent.mm|微信支付|存储的个人文件|读取外置存储器、写入外置存储器|[https://weixin.qq.com/cgi-bin/readtemplate?lang=zh_CN&t=weixin_agreement&s=privacy](https://weixin.qq.com/cgi-bin/readtemplate?lang=zh_CN&t=weixin_agreement&s=privacy)|
|支付宝|com.alipay|支付宝支付|暂无|读取网络状态|[https://render.alipay.com/p/c/k2cx0tg8](https://render.alipay.com/p/c/k2cx0tg8)|
#### Speech
Speech模块集成的三方SDK说明
|SDK名称|SDK包名|SDK用途|可能获取的个人信息类型|调用的设备权限|SDK隐私政策链接|
|:----|:----|:----|:----|:----|:----
|百度语音识别|com.baidu.speech|语音识别|IMEI、openid|获取网络状态、访问Wi-Fi状态、读取手机状态和身份|[https://ai.baidu.com/ai-doc/REFERENCE/Qkdykq1r3](https://ai.baidu.com/ai-doc/REFERENCE/Qkdykq1r3)|
|讯飞语音|com.iflytek|语音识别|IMEI、openid|获取网络状态、访问Wi-Fi状态、读取手机状态和身份|[https://www.xfyun.cn/doc/policy/privacy.html](https://www.xfyun.cn/doc/policy/privacy.html)|
#### Map & Geolocation
Map & Geolocation模块集成的三方SDK说明
|SDK名称|SDK包名|SDK用途|可能获取的个人信息类型|调用的设备权限|SDK隐私政策链接|
|:----|:----|:----|:----|:----|:----
|高德|com.amap.api, com.loc, com.autonavi|地图&定位|IMEI、openid、位置信息|获取网络状态、访问Wi-Fi状态、位置信息、访问粗略位置、访问精准定位、读取手机状态和身份|[https://lbs.amap.com/agreement/compliance](https://lbs.amap.com/agreement/compliance)|
|百度|com.baidu|地图&定位|IMEI、openid、位置信息|获取网络状态、访问Wi-Fi状态、位置信息、访问粗略位置、访问精准定位、读取手机状态和身份|[https://map.baidu.com/zt/client/privacy/index.html](https://map.baidu.com/zt/client/privacy/index.html)|
#### uni-AD
uni-AD广告模块集成的三方SDK说明
|SDK名称|SDK包名|SDK用途|可能获取的个人信息类型|调用的设备权限|SDK隐私政策链接|
|:----|:----|:----|:----|:----|:----
|快手|com.kwad.sdk|广告|IMEI、openid、位置信息|获取网络状态、访问Wi-Fi状态、位置信息、读写外置存储器、读取手机状态和身份|[https://www.kuaishou.com/about/policy](https://www.kuaishou.com/about/policy)|
|优量汇|com.qq.e|广告|IMEI、openid、位置信息|获取网络状态、访问Wi-Fi状态、位置信息、读写外置存储器、读取手机状态和身份|[https://imgcache.qq.com/..privacy](https://imgcache.qq.com/gdt/cdn/adn/uniondoc/ylh_sdk_privacy_statement.html)|
|穿山甲|com.bytedance.sdk. openadsdk.adhost|广告|IMEI、openid、位置信息|获取网络状态、访问Wi-Fi状态、位置信息、读写外置存储器、读取手机状态和身份|[https://www.pangle.cn/privacy/partner](https://www.pangle.cn/privacy/partner)|
#### 腾讯x5内核
|SDK名称|SDK包名|SDK用途|可能获取的个人信息类型|调用的设备权限|SDK隐私政策链接|
|:----|:----|:----|:----|:----|:----
|x5内核|com.tencent.tbs、com.tencent.smtt|x5内核渲染webview|IMEI、openid|读写外置存储器、读取手机状态和身份|[https://x5.tencent.com/docs/privacy.html](https://x5.tencent.com/docs/privacy.html)|
如果您的应用使用了依赖三方SDK的模块也需要将其合规条款添加到《隐私政策》中
#### uni原生插件
如果应用使用了uni原生插件,需要注意一下几点:
+ 使用插件时请查看插件详情页面中的 `隐私、权限声明` 。(插件使用什么sdk?获取了什么用户信息?都应由插件作者提供并填写在 `隐私、权限声明`中)
+ 将插件中用到的三方SDK信息添加到用户隐私协议中。例如集成了`百度定位`。就需要在隐私协议中说明集成了百度定位SDK。获取了xxx用户信息!用于xxx.
+ 如果发现插件有获取用户信息而插件详情页并没有提供`隐私、权限声明`,请与插件开发者或与我们反馈共同督促进行补充。
#### 其它
《隐私政策》必须非常清楚、全面地说明(不要用可能收集、了解用户信息这种模糊不清晰的词语)收集用户个人信息的目的、方式和范围。
如果应用使用“通讯录”、“短信”等相关功能,请根据应用业务场景进行描述。
#### 如何解决"强制、频繁、过度索取权限"问题
对于权限问题,主要注意以下几个方面:
+ 应用中没有对应的服务或场景时,不要申请对应权限(例如没有使用到位置的服务时,不要申请定位权限)
+ 应用申请权限时,如果用户拒绝,不要直接退出APP无法使用。千万不要将应用启动时申请“读写手机存储”和“访问设备信息”权限设置为“always”,详情参考:[https://ask.dcloud.net.cn/article/36549](https://ask.dcloud.net.cn/article/36549)
+ 调用申请权限相关时,如果用户拒绝,非用户主动触发功能,不要重复调用API触发弹出申请权限窗口影响用户使用
在开发uni-app中还需要注意以下问题:
`不要在页面生命周期onShow中调用可能触发权限提示框的API,如` [uni.getLocation](https://uniapp.dcloud.io/api/location/location?id=getlocation)[uni.chooseImage](https://uniapp.dcloud.io/api/media/image?id=chooseimage)`等`
#### 如何解决“强制用户使用定向推送功能”问题
《隐私政策》中涉及到 “推荐”、“定制”、“个性化”等关键字改为“提供、展示、通知、发送、、、”等字眼,如果确实会涉及到个性化服务请在app的设置中增加个性化推送开关
#### 如何解决 用户点击《隐私政策》“同意”前,APP和SDK不要进行任何行为,包括SDK不能初始化,APP或SDK不能收集用户信息(包括但不限于IMEI、IMSI、设备MAC地址、软件列表、设备序列号、androidID)
注意:`apk是在7月8号之前基于HX3.1.18云打包生产的apk可能存在提前获取IMIE问题,打包机已修复该问题!请使用HX3.1.18重新云打包。离线打包请更新3.1.18紧急更新的aar资源即可`
+ 请先确保APK是基于3.1.18+版本生产的!
+ 确保已配置使用“template”模式隐私与政策提示框!
+ 可以通过小米手机 系统是MIUI12设备。安装你的应用。然后查看`应用详情`-->`应用行为记录`是否在点击“同意”前有获取权限信息等情况。
+ 如果你 app 是离线打包请务必关闭调试开关,修改项目dcloud_control.xml中syncDebug为false
+ 以上都符合请重新提交平台检测。
**各大应用市场上架合规审查细节可能存在差异,如果开发者碰到相关问题请及时反馈,我们会及时汇总整理供大家参考**
#### 如何解决“用户不同意强制退出应用”问题
这个问题可能是隐私弹窗显示后,用户选择了“不同意”按钮后应用退出导致的。请按以下修改。
+ 配置二次弹窗提示second,参考[https://ask.dcloud.net.cn/article/36937](https://ask.dcloud.net.cn/article/36937)
+ 二次弹窗配置按钮信息为“同意并继续”和“退出应用”
#### 关于离线SDK需要注意
如果重写了DCloudApplication,需要注意在Application初始化的三方SDK的合规操作。防止导致启动隐私弹窗前获取了用户信息无法上架
#### app上架应用市场,检测集成了广告被拒的解决方案
+ 使用HX云打包时是否勾选了三方广告!如果勾选了请在隐私协议添加广告隐私说明。误勾选请去除并重新打包上架。
+ 离线打包检测是否集成了相关三方广告SDK!如果集成了请在隐私协议添加广告隐私说明。误集成请去除并重新编译apk上架。
#### 应用没有勾选三方广告模块但是上架华为市场检测反馈集成了广告被拒
uni-AD广告基础功能包含管理其它三方广告SDK的逻辑,会通过反射判断广告SDK是否存在,在没有勾选“360广告联盟”、“今日头条穿山甲广告联盟”、“腾讯优量汇广告联盟”、”快手广告联盟“时,也可能会被华为应用市场检测为包含奇虎360、广点通/优量汇、穿山甲等广告SDK,实际上apk中并没有包含相应的广告SDK。我们已经在优化广告基础功能实现方案来避免(请关注新版本更新日志),目前可以通过以下临时方案解决:
+ 向华为应用市场申诉,说明安装包中并没有包含广告SDK,只是存在反射判断广告SDK是否存在
+ 目前我们收到此反馈此问题的都是5+ App项目,uni-app项目可能并不存在此问题,建议有条件的话将5+ App项目升级为uni-app项目
#### 看不懂文档不知道如何修改?
可开通付费技术服务 参考:[https://ask.dcloud.net.cn/article/13015](https://ask.dcloud.net.cn/article/13015)
## 相关参考
Android平台隐私与政策提示框配置方法:[https://ask.dcloud.net.cn/article/36937](https://ask.dcloud.net.cn/article/36937)
Android平台应用启动时读写手机存储、访问设备信息(如IMEI)等权限策略及提示信息:[https://ask.dcloud.net.cn/article/36549](https://ask.dcloud.net.cn/article/36549)
Android平台配置权限参考:[https://ask.dcloud.net.cn/article/36982](https://ask.dcloud.net.cn/article/36982)
\ No newline at end of file
......@@ -13,6 +13,7 @@
* [生命周期](collocation/frame/lifecycle.md)
* [页面](collocation/frame/window.md)
* [页面通讯](collocation/frame/communication.md)
* [SSR服务端渲染](collocation/ssr.md)
* [国际化](collocation/i18n.md)
* 自动化测试
* [快速开始](collocation/auto/quick-start.md)
......@@ -55,7 +56,7 @@
<img src="https://bjetxgzv.cdn.bspapp.com/VKCEYUGU-uni-app-doc/759713d0-4f2d-11eb-a16f-5b3e54966275.png" width="20" height="20"/>
<div class="contact-smg">
<div>官方QQ交流群</div>
<div>25:165297000 &nbsp;<a target="_blank" href="https://qm.qq.com/cgi-bin/qm/qr?k=RKv-Wgx8HXXCUOeLa6B6WeRHXdfJhXTt&jump_from=webapi">点此加入</a></div>
<div>8:695442854 &nbsp;<a target="_blank" href="https://qm.qq.com/cgi-bin/qm/qr?k=ojVbbaSsh9pdCVIgFcruPk1mcbxzG8co&jump_from=webapi">点此加入</a></div>
<div>群35:713420817(2000人已满)</div>
<div>群34:530305531(2000人已满)</div>
<div>群33:498071674(2000人已满)</div>
......@@ -66,7 +67,7 @@
<div>群28:166188776(2000人已满)</div>
<div>群27:811363410(2000人已满)</div>
<div>群26:147867597(2000人已满)</div>
<!-- <div>群25:165297000(2000人已满)</div> -->
<div>群25:165297000(2000人已满)</div>
<div>群24:672494800(2000人已满)</div>
<div>群23:599958679(2000人已满)</div>
<div>群22:687186952(2000人已满)</div>
......@@ -83,7 +84,7 @@
<div>群11:296811328(2000人已满)</div>
<div>群10:959059626(2000人已满)</div>
<div>群9:775128777(2000人已满)</div>
<div>群8:695442854(2000人已满)</div>
<!-- <div>群8:695442854(2000人已满)</div> -->
<div>群7:942061423(2000人已满)</div>
<div>群6:697264024(2000人已满)</div>
<div>群5:731951419(2000人已满)</div>
......
......@@ -15,13 +15,14 @@ uni-app提供了一批API,这些API可以操控uni-app应用,包括运行、
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√(ios仅支持模拟器)|√|√|x|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√(ios仅支持模拟器)|√|√|x|x|x|x|x|x|
目前仅 [cli](https://uniapp.dcloud.net.cn/quickstart?id=_2-通过vue-cli命令行) 工程支持。有利于持续集成。
[HBuilderX uniapp自动化测试插件](https://ext.dcloud.net.cn/plugin?id=5708), 支持在HBuilderX内对uniapp普通项目、cli项目进行自动化测试。此插件简化了测试环境安装、测试用例创建、测试运行、测试设备选择等步骤。
推荐使用方式:研发提交源码到版本库后,持续集成系统自动拉取源码,自动运行自动化测试。
暂不支持百度,先忽略百度相关测试代码
......@@ -357,5 +358,3 @@ await tag.$('.test')
3. 微信小程序暂不支持父子选择器
4. 百度小程序选择元素必须有事件的元素才能被选中,否则提示元素不存在
5. 分包中的页面,打开之后要延迟时间长一点,否则不能正确获取到页面信息
......@@ -17,6 +17,7 @@
- 应用生命周期仅可在``App.vue``中监听,在其它页面监听无效。
- onlaunch里进行页面跳转,如遇白屏报错,请参考[https://ask.dcloud.net.cn/article/35942](https://ask.dcloud.net.cn/article/35942)
- onPageNotFound 页面实际上已经打开了(比如通过分享卡片、小程序码)且发现页面不存在,才会触发,api 跳转不存在的页面不会触发(如 uni.navigateTo)
**示例代码**
```html
......@@ -52,7 +53,7 @@
|onPullDownRefresh|监听用户下拉动作,一般用于下拉刷新,参考[示例](api/ui/pulldown)|||
|onReachBottom|页面滚动到底部的事件(不是scroll-view滚到底),常用于下拉下一页数据。具体见下方注意事项|||
|onTabItemTap|点击 tab 时触发,参数为Object,具体见下方注意事项|微信小程序、QQ小程序、支付宝小程序、百度小程序、H5、App(自定义组件模式)||
|onShareAppMessage|用户点击右上角分享|微信小程序、QQ小程序、支付宝小程序、字节小程序||
|onShareAppMessage|用户点击右上角分享|微信小程序、QQ小程序、支付宝小程序、字节小程序、快手小程序||
|onPageScroll|监听页面滚动,参数为Object|nvue暂不支持||
|onNavigationBarButtonTap|监听原生标题栏按钮点击事件,参数为Object|App、H5||
|onBackPress|监听页面返回,返回 event = {from:backbutton、 navigateBack} ,backbutton 表示来源是左上角返回按钮或 android 返回键;navigateBack表示来源是 uni.navigateBack ;详细说明及使用:[onBackPress 详解](http://ask.dcloud.net.cn/article/35120)。支付宝小程序只有真机能触发,只能监听非navigateBack引起的返回,不可阻止默认行为。|app、H5、支付宝小程序||
......
......@@ -6,8 +6,8 @@
|:-|:-|:-|:-|:-|
|name|String||应用名称||
|appid|String|新建 uni-app 项目时,DCloud 云端分配。用途[详见](https://ask.dcloud.net.cn/article/35907)|应用标识||
|screenOrientation|Array||重力感应、横竖屏配置,可取值:"portrait-primary":竖屏正方向;"portrait-secondary":竖屏反方向;"landscape-primary":横屏正方向;"landscape-secondary":横屏反方向。||
|description|String||应用描述||
|locale|String|auto|设置当前默认语言,具体参考 [locale](/api/ui/prompt/locale)||
|versionName|String||版本名称,例如:1.0.0。详见下方Tips说明||
|versionCode|String||版本号,例如:36||
|transformPx|Boolean|true|是否转换项目的px,为true时将px转换为rpx,为false时,px为传统的实际像素||
......@@ -55,6 +55,7 @@ uni 统计配置项
|属性|类型|说明|最低版本|
|:-|:-|:-|:-|
|splashscreen|Object|App 启动界面信息,[详见](/collocation/manifest?id=splashscreen)||
|screenOrientation|Array|重力感应、横竖屏配置,可取值:"portrait-primary":竖屏正方向;"portrait-secondary":竖屏反方向;"landscape-primary":横屏正方向;"landscape-secondary":横屏反方向。||
|modules|Object|权限模块,[详见](/collocation/manifest?id=modules)||
|distribute|Object|App 发布信息,[详见](/collocation/manifest?id=distribute)||
|usingComponents|Boolean|是否启用自定义组件模式,默认为false,[编译模式区别详情](https://ask.dcloud.net.cn/article/35843)|1.9.0+|
......@@ -127,7 +128,7 @@ splash(启动封面)是App必然存在的、不可取消的。
|android|Object|Android 应用配置,详见: [完整 manifest.json](/collocation/manifest?id=完整-manifestjson)|
|ios|Object|iOS 应用配置,详见: [完整 manifest.json](/collocation/manifest?id=完整-manifestjson)|
|sdkConfigs|Object|SDK配置,仅打包生效 [详见](/collocation/manifest?id=sdkConfigs)|
|orientation|Array|同 screenOrientation 配置,仅打包生效,推荐使用 screenOrientation|
|orientation|Array|同 screenOrientation 配置,仅打包生效,已废弃,推荐使用 screenOrientation|
##### App SdkConfigs@sdkConfigs
......@@ -486,6 +487,15 @@ Tips:关于摇树优化(treeShaking)原理及优化结果,参考:[http
mp-qq只支持自定义组件模式,不存在usingComponents配置
### mp-kuaishou
|属性|类型|说明|
|:-|:-|:-|
|appid|String|快手小程序的 AppID,登录 [https://mp.kuaishou.com](https://mp.kuaishou.com) 申请|
|uniStatistics|Object|[快手小程序是否开启 uni 统计,配置方法同全局配置](/collocation/manifest?id=uniStatistics)|
|scopedSlotsCompiler|String|作用域插槽编译模式,HBuilderX 3.1.19+ 开始支持,可选:legacy、auto、augmented,默认:augmented|
### 关于分包优化的说明
- 在对应平台的配置下添加`"optimization":{"subPackages":true}`开启分包优化
......@@ -547,13 +557,13 @@ mp-qq只支持自定义组件模式,不存在usingComponents配置
"uniStatistics": {
"enable": false
},
"screenOrientation": [
"portrait-primary",
"landscape-primary",
"portrait-secondary",
"landscape-secondary"
],
"app-plus": {
"screenOrientation": [
"portrait-primary",
"landscape-primary",
"portrait-secondary",
"landscape-secondary"
],
"optimization": {
"subPackages": true
},
......
......@@ -147,6 +147,7 @@
|mp-baidu|Object||设置编译到 mp-baidu 平台的特定样式|百度小程序|
|mp-toutiao|Object||设置编译到 mp-toutiao 平台的特定样式|字节跳动小程序|
|mp-qq|Object||设置编译到 mp-qq 平台的特定样式|QQ小程序|
|mp-kuaishou|Object||设置编译到 mp-kuaishou 平台的特定样式|快手小程序|
|usingComponents|Object| |引用小程序组件,参考 [小程序组件](/frame?id=小程序组件支持)||
|renderingMode|String| |同层渲染,webrtc(实时音视频) 无法正常时尝试配置 seperated 强制关掉同层|微信小程序|
|leftWindow|Boolean|true|当存在 leftWindow 时,默认是否显示 leftWindow|H5|
......@@ -155,7 +156,7 @@
|rpxCalcMaxDeviceWidth|Number|960|rpx 计算所支持的最大设备宽度,单位 px|App、H5(2.8.12+)|
|rpxCalcBaseDeviceWidth|Number|375|rpx 计算使用的基准设备宽度,设备实际宽度超出 rpx 计算所支持的最大设备宽度时将按基准宽度计算,单位 px|App、H5(2.8.12+)|
|rpxCalcIncludeWidth|Number|750|rpx 计算特殊处理的值,始终按实际的设备宽度计算,单位 rpx|App、H5(2.8.12+)|
|maxWidth|Number|1190|单位px,当浏览器可见区域宽度大于maxWidth时,两侧留白,当小于等于maxWidth时,页面铺满;不同页面支持配置不同的maxWidth;maxWidth = leftWindow(可选)+page(页面主体)+rightWindow(可选)|H5(2.9.9+)|
|maxWidth|Number||单位px,当浏览器可见区域宽度大于maxWidth时,两侧留白,当小于等于maxWidth时,页面铺满;不同页面支持配置不同的maxWidth;maxWidth = leftWindow(可选)+page(页面主体)+rightWindow(可选)|H5(2.9.9+)|
**注意**
......@@ -316,11 +317,12 @@ uni-app 2.9+ 新增 leftWindow, topWindow, rightWindow 配置。用于解决宽
|mp-baidu|Object||设置编译到 mp-baidu 平台的特定样式|百度小程序|
|mp-toutiao|Object||设置编译到 mp-toutiao 平台的特定样式|字节跳动小程序|
|mp-qq|Object||设置编译到 mp-qq 平台的特定样式|QQ小程序|
|mp-kuaishou|Object||设置编译到 mp-kuaishou 平台的特定样式|QQ小程序|
|usingComponents|Object||引用小程序组件,参考 [小程序组件](/frame?id=小程序组件支持)|App、微信小程序、支付宝小程序、百度小程序|
|leftWindow|Boolean|true|当存在 leftWindow时,当前页面是否显示 leftWindow|H5|
|topWindow|Boolean|true|当存在 topWindow 时,当前页面是否显示 topWindow|H5|
|rightWindow|Boolean|true|当存在 rightWindow时,当前页面是否显示 rightWindow|H5|
|maxWidth|Number|1190|单位px,当浏览器可见区域宽度大于maxWidth时,两侧留白,当小于等于maxWidth时,页面铺满;不同页面支持配置不同的maxWidth;maxWidth = leftWindow(可选)+page(页面主体)+rightWindow(可选)|H5(2.9.9+)|
|maxWidth|Number||单位px,当浏览器可见区域宽度大于maxWidth时,两侧留白,当小于等于maxWidth时,页面铺满;不同页面支持配置不同的maxWidth;maxWidth = leftWindow(可选)+page(页面主体)+rightWindow(可选)|H5(2.9.9+)|
**注意**
......
......@@ -126,33 +126,33 @@ export function createApp() {
3. 在页面或组件中使用
```html
<template>
<text v-if="item">{{ item.title }}</text>
<text v-else>...</text>
</template>
<script>
const id = 1;// 模拟ID
export default {
computed: {
item() {
return this.$store.state.items[id]
}
},
serverPrefetch() {// 服务端预取数据的生命周期
return this.fetchItem()
},
mounted() { // 仅客户端执行的生命周期
if (!this.item) { // 判断服务端是否已正常获取,若未获取,重新调用加载数据
this.fetchItem()
}
},
methods: {
fetchItem() {
return this.$store.dispatch('fetchItem', id)
}
}
}
<template>
<text v-if="item">{{ item.title }}</text>
<text v-else>...</text>
</template>
<script>
const id = 1;// 模拟ID
export default {
computed: {
item() {
return this.$store.state.items[id]
}
},
serverPrefetch() {// 服务端预取数据的生命周期
return this.fetchItem()
},
mounted() { // 仅客户端执行的生命周期
if (!this.item) { // 判断服务端是否已正常获取,若未获取,重新调用加载数据
this.fetchItem()
}
},
methods: {
fetchItem() {
return this.$store.dispatch('fetchItem', id)
}
}
}
</script>
```
......@@ -162,20 +162,20 @@ export default {
* 开通[uniCloud](https://unicloud.dcloud.net.cn)以及[前端网页托管](https://uniapp.dcloud.net.cn/uniCloud/hosting)
* 配置`vite.config.js`中的`base``前端网页托管`地址
```js
import {
defineConfig
} from 'vite'
import uni from '@dcloudio/vite-plugin-uni'
// https://vitejs.dev/config/
export default defineConfig({
base: 'https://static-xxxx.bspapp.com/', // uniCloud 前端网页托管资源地址(主要是应用编译后的js,图片等静态资源,可以配置为二级目录)
plugins: [
uni(),
],
import {
defineConfig
} from 'vite'
import uni from '@dcloudio/vite-plugin-uni'
// https://vitejs.dev/config/
export default defineConfig({
base: 'https://static-xxxx.bspapp.com/', // uniCloud 前端网页托管资源地址(主要是应用编译后的js,图片等静态资源,可以配置为二级目录)
plugins: [
uni(),
],
})
```
* 编译:
> cli工程:`npm run build:h5:ssr`或通过`HBuilderX`的`发行菜单->网站 PC-Web或手机H5`、勾选`ssr`
> cli工程:`npm run build:h5:ssr`或通过`HBuilderX 3.1.16及以上版本`的`发行菜单->网站 PC-Web或手机H5`、勾选`ssr`
![以ssr模式发行](https://vkceyugu.cdn.bspapp.com/VKCEYUGU-f184e7c3-1912-41b2-b81f-435d1b37c7b4/d7574ced-e253-4b73-8187-86d6a8811364.jpg)
......
......@@ -294,7 +294,7 @@ uni-app支持的组件分为vue组件和小程序自定义组件。
- vue组件:[文档](https://uniapp.dcloud.net.cn/vue-components?id=%e6%a6%82%e5%bf%b5)
- 小程序自定义组件:其规范不是vue规范,而是小程序规范,[文档](https://uniapp.dcloud.net.cn/frame?id=%e5%b0%8f%e7%a8%8b%e5%ba%8f%e8%87%aa%e5%ae%9a%e4%b9%89%e7%bb%84%e4%bb%b6%e6%94%af%e6%8c%81)
日常开发来讲,推荐使用vue组件。uni-app支持小程序组件要是为了兼容更多生态资源。
日常开发来讲,推荐使用vue组件。uni-app支持小程序组件要是为了兼容更多生态资源。
如果扩展组件符合uni-app的`easycom`组件规范,则可以免注册,直接使用。比如uni ui扩展组件就符合`easycom`组件规范。
......
......@@ -147,7 +147,7 @@
<img src="https://bjetxgzv.cdn.bspapp.com/VKCEYUGU-uni-app-doc/759713d0-4f2d-11eb-a16f-5b3e54966275.png" width="20" height="20"/>
<div class="contact-smg">
<div>官方QQ交流群</div>
<div>25:165297000 &nbsp;<a target="_blank" href="https://qm.qq.com/cgi-bin/qm/qr?k=RKv-Wgx8HXXCUOeLa6B6WeRHXdfJhXTt&jump_from=webapi">点此加入</a></div>
<div>8:695442854 &nbsp;<a target="_blank" href="https://qm.qq.com/cgi-bin/qm/qr?k=ojVbbaSsh9pdCVIgFcruPk1mcbxzG8co&jump_from=webapi">点此加入</a></div>
<div>群35:713420817(2000人已满)</div>
<div>群34:530305531(2000人已满)</div>
<div>群33:498071674(2000人已满)</div>
......@@ -158,7 +158,7 @@
<div>群28:166188776(2000人已满)</div>
<div>群27:811363410(2000人已满)</div>
<div>群26:147867597(2000人已满)</div>
<!-- <div>群25:165297000(2000人已满)</div> -->
<div>群25:165297000(2000人已满)</div>
<div>群24:672494800(2000人已满)</div>
<div>群23:599958679(2000人已满)</div>
<div>群22:687186952(2000人已满)</div>
......@@ -175,7 +175,7 @@
<div>群11:296811328(2000人已满)</div>
<div>群10:959059626(2000人已满)</div>
<div>群9:775128777(2000人已满)</div>
<div>群8:695442854(2000人已满)</div>
<!-- <div>群8:695442854(2000人已满)</div> -->
<div>群7:942061423(2000人已满)</div>
<div>群6:697264024(2000人已满)</div>
<div>群5:731951419(2000人已满)</div>
......
......@@ -8,9 +8,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√(3.1.17)|x|x|x|x|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√(3.1.17)|x|x|x|x|x|x|x|x|x|
**仅Android nvue支持**
......
......@@ -18,9 +18,9 @@
**平台差异说明**
|App-nvue|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√(3.0.0+)|x|x|x|x|x|x|x|x|
|App-nvue|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√(3.0.0+)|x|x|x|x|x|x|x|x|x|
**开通配置广告**
......
......@@ -6,9 +6,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|x|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|x|x|x|x|x|x|
**开通配置广告**
......
......@@ -17,9 +17,9 @@ banner或信息流广告展现场景非常灵活,常见的展现场景为:
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√(2.5.2+)|x|√|x|√|√|√|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√(2.5.2+)|√(3.1.22+)|√|x|√|√|√|x|x|√|
**开通配置广告**
......@@ -27,7 +27,7 @@ banner或信息流广告展现场景非常灵活,常见的展现场景为:
开通广告步骤:
1. 开通广告
需在广告平台后台操作:
* App平台:[https://uniad.dcloud.net.cn/](https://uniad.dcloud.net.cn/)
* App/H5平台:[https://uniad.dcloud.net.cn/](https://uniad.dcloud.net.cn/)
* 小程序平台:在各自的小程序管理后台操作。
2. 申请广告位id
在各位后台申请广告位id
......@@ -40,7 +40,9 @@ banner或信息流广告展现场景非常灵活,常见的展现场景为:
|:-|:-|:-|:-|:-|
|data|Object|可选|广告数据,通过 plus.ad.getAds (参考示例代码),设置后adpid将无效|App|
|adpid|String||uni-AD App广告位id,在[uni-AD官网](https://uniad.dcloud.net.cn/)申请广告位|App|
|unit-id|String||广告单元id,可在小程序管理后台的流量主模块新建|微信小程序、字节跳动小程序(最低版本1.19.0+)、QQ小程序|
|adpid-widescreen|String||同`adpid`, 一般用于大屏幕生效,当组件的宽度大于 750px 时生效,可以自定义生效的范围,参见 `widescreen-width`|H5|
|widescreen-width|number|750|`widescreen` 自定义组件生效宽度|H5|
|unit-id|String||广告单元id,可在小程序管理后台的流量主模块新建|微信小程序、字节跳动小程序(最低版本1.19.0+)、QQ小程序、快手小程序|
|ad-intervals|number||广告自动刷新的间隔时间,单位为秒,参数值必须大于等于30(该参数不传入时 Banner 广告不会自动刷新)|微信小程序(基础库2.3.1+)|
|appid|String||小程序应用 ID|百度小程序|
|apid|String||小程序广告位 ID|百度小程序|
......@@ -48,7 +50,7 @@ banner或信息流广告展现场景非常灵活,常见的展现场景为:
|ad-top|Number||type为feeds时广告上边距(px),必须大于0|QQ小程序|
|ad-width|Number||type为feeds时广告宽度(px),默认100%,最大值为屏幕宽度,最小值为265|QQ小程序|
|ad-height|Number||type为feeds时广告高度(px),最小85,最大160|QQ小程序|
|type|String|feed||QQ小程序、百度小程序、字节跳动小程序|
|type|String|feed||QQ小程序、百度小程序、字节跳动小程序、快手小程序|
|@load|EventHandle||广告加载成功的回调||
|@error|EventHandle||广告加载失败的回调,event.detail = {errCode: }||
|@close|EventHandle||广告关闭的回调||
......@@ -60,7 +62,7 @@ banner或信息流广告展现场景非常灵活,常见的展现场景为:
**type属性 头条**
广告的类型,默认 bannner,具体类型有:banner、video(视频)、large(大图)、lImg(左图右文)、rImg(右图左文),默认值为 banner
广告的类型,默认 banner,具体类型有:banner、video(视频)、large(大图)、lImg(左图右文)、rImg(右图左文),默认值为 banner
**type属性 QQ**
......@@ -161,7 +163,7 @@ export default {
```
api的方式(仅app平台支持)
api的方式(仅app平台支持),不推荐使用这种调用方式,调用比较复杂,且不跨平台,开发者还需要手动处理缓存逻辑
``` html
<template>
......@@ -219,7 +221,7 @@ export default {
```
使用 ad/ad-draw 模拟插屏广告效果
使用 ad/ad-draw 模拟插屏广告效果@Interstitial
```html
<template>
......@@ -289,6 +291,28 @@ export default {
```
#### H5特定环境不显示广告示例@h5MicroMessengerHide
```html
<template>
<view>
<!-- 下面的示例在微信中打开H5页面不显示广告 -->
<ad class="ad" v-if="showAd" adpid="1111111111"></ad>
</view>
</template>
<script>
export default {
data() {
let showAd = !navigator.userAgent.includes("MicroMessenger")
return {
showAd
}
},
}
</script>
```
**激励视频广告**
文档地址:[https://uniapp.dcloud.io/api/a-d/rewarded-video](https://uniapp.dcloud.io/api/a-d/rewarded-video)
......@@ -298,4 +322,5 @@ export default {
- App端广告开通指南和收益相关问题:[https://ask.dcloud.net.cn/article/36769](https://ask.dcloud.net.cn/article/36769)
- App端除了ad组件,还支持开屏、激励视频等多种广告形式。详见[uni-AD官网](https://uniad.dcloud.net.cn/)
- App端uni-AD聚合了腾讯广点通、头条穿山甲、360广告联盟等服务,打包时必须勾选相应的sdk,详见:[https://ask.dcloud.net.cn/article/36718](https://ask.dcloud.net.cn/article/36718)
- H5平台仅支持uni-app
![](https://bjetxgzv.cdn.bspapp.com/VKCEYUGU-uni-app-doc/f21eb570-4f32-11eb-b680-7980c8a877b8.jpg)
......@@ -3,9 +3,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|x|√|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|x|√|x|x|x|
**注意:** 微信小程序平台自基础库 1.6.0 版本开始,不再维护 audio 组件,推荐使用API方式而不是组件方式来播放音频。API见 [uni.createInnerAudioContext](/api/media/audio-context?id=createinneraudiocontext) 替代。
......
......@@ -60,10 +60,10 @@
|值|说明|平台差异说明|
|:-|:-|:-|
|feedback|打开“意见反馈”页面,用户可提交反馈内容并上传日志|App、微信小程序、QQ小程序|
|share|触发用户转发|微信小程序、百度小程序、支付宝小程序、字节跳动小程序、QQ小程序|
|getUserInfo|获取用户信息,可以从@getuserinfo回调中获取到用户信息,包括头像、昵称等信息|微信小程序、百度小程序、QQ小程序|
|share|触发用户转发|微信小程序、百度小程序、支付宝小程序、字节跳动小程序、QQ小程序、快手小程序 |
|getUserInfo|获取用户信息,可以从@getuserinfo回调中获取到用户信息,包括头像、昵称等信息|微信小程序、百度小程序、QQ小程序、快手小程序 |
|contact | 打开客服会话,如果用户在会话中点击消息卡片后返回应用,可以从 @contact 回调中获得具体信息 |微信小程序、百度小程序|
|getPhoneNumber | 获取用户手机号,可以从@getphonenumber回调中获取到用户信息|微信小程序、百度小程序、字节跳动小程序、支付宝小程序。App平台另见[一键登陆](https://uniapp.dcloud.net.cn/univerify) |
|getPhoneNumber | 获取用户手机号,可以从@getphonenumber回调中获取到用户信息|微信小程序、百度小程序、字节跳动小程序、支付宝小程序、快手小程序。App平台另见[一键登陆](https://uniapp.dcloud.net.cn/univerify) |
|launchApp | 小程序中打开APP,可以通过app-parameter属性设定向APP传的参数|[微信小程序](https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/launchApp.html)[QQ小程序](https://q.qq.com/wiki/develop/miniprogram/frame/open_ability/open_app.html)|
|openSetting | 打开授权设置页 |微信小程序、百度小程序|
|getAuthorize | 支持小程序授权 | 支付宝小程序 |
......
......@@ -3,9 +3,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|√|√|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|√|√|x|√|
* 在 App 和 H5 端,可以使用API方式来调用全屏摄像头,而不是组件内嵌方式,详见:[uni.chooseImage](/api/media/image?id=chooseimage)[uni.chooseVideo](/api/media/video?id=choosevideo) *
* 如开发身份证扫描、银行卡识别等ocr识别需求,在微信小程序和百度小程序中使用本camera组件,将图片发送给服务器识别,插件市场有封装好的[模板](https://ext.dcloud.net.cn/search?q=%E5%B0%8F%E7%A8%8B%E5%BA%8F%E7%9B%B8%E6%9C%BA);在App端使用[原生插件](https://ext.dcloud.net.cn/search?q=ocr)
......@@ -21,8 +21,8 @@
|device-position|String |back |前置或后置摄像头,值为front, back| |
|flash |String |auto |闪光灯,值为auto, on, off| |
|frame-size|string|medium|指定期望的相机帧数据尺寸|微信小程序2.7.0、快应用|
|@stop |EventHandle | |摄像头在非正常终止时触发,如退出后台等情况| |
|@error |EventHandle | |用户不允许使用摄像头时触发| |
|@stop |EventHandle | |摄像头在非正常终止时触发,如退出后台等情况| 快手小程序不支持 |
|@error |EventHandle | |用户不允许使用摄像头时触发| 快手小程序不支持 |
|@initdone|eventhandle||相机初始化完成时触发,e.detail = {maxZoom}|微信小程序2.7.0|
|@scancode |EventHandle | |在扫码识别成功时触发,仅在 mode="scanCode" 时生效|微信小程序 |
......
......@@ -6,13 +6,13 @@
|属性名|类型|默认值|说明|平台差异说明|
|:-|:-|:-|:-|:-|
|type|String||指定 canvas 类型,支持 2d (2.9.0) 和 webgl|微信小程序 2.7.0+|
|type|String||指定 canvas 类型,支持 2d (2.9.0) 和 webgl|微信小程序 2.7.0+ 字节小程序1.78.0+|
|canvas-id|String||canvas 组件的唯一标识符||
|disable-scroll|Boolean|false|当在 canvas 中移动时且有绑定手势事件时,禁止屏幕滚动以及下拉刷新|字节跳动小程序不支持|
|@touchstart|EventHandle||手指触摸动作开始|字节跳动小程序不支持|
|@touchmove|EventHandle||手指触摸后移动|字节跳动小程序不支持|
|@touchend|EventHandle||手指触摸动作结束|字节跳动小程序不支持|
|@touchcancel|EventHandle||手指触摸动作被打断,如来电提醒,弹窗|字节跳动小程序不支持|
|@touchstart|EventHandle||手指触摸动作开始|字节小程序1.78.0+|
|@touchmove|EventHandle||手指触摸后移动|字节小程序1.78.0+|
|@touchend|EventHandle||手指触摸动作结束|字节小程序1.78.0+|
|@touchcancel|EventHandle||手指触摸动作被打断,如来电提醒,弹窗|字节小程序1.78.0+|
|@longtap|EventHandle||手指长按 500ms 之后触发,触发了长按事件后进行移动不会触发屏幕的滚动|字节跳动小程序不支持|
|@error|EventHandle||当发生错误时触发 error 事件,detail = {errMsg: 'something wrong'}|字节跳动小程序不支持|
......
......@@ -6,9 +6,9 @@ app-vue和小程序框架,渲染引擎是webview的。但为了优化体验,
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|√|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|√|x|√|
* app-nvue所有组件均为原生渲染,不存在前端组件无法覆盖原生组件的问题。但为了保持多端兼容,nvue里也实现了`cover-view`,作用于普通`view`一样。
* 微信小程序部分原生组件实现了同层渲染,在指定的基础库版本上,某些原生组件可无需使用`cover-view`覆盖,[详见](https://developers.weixin.qq.com/miniprogram/dev/component/native-component.html)
......@@ -27,15 +27,15 @@ app-vue和小程序框架,渲染引擎是webview的。但为了优化体验,
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|√|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|√|x|√|
**属性说明**
|属性名|类型|默认值|说明|平台差异说明|
|:-|:-|:-|:-|:-|
|src|String||图标路径。支持本地路径、网络路径。不支持 base64 格式。|
|src|String||图标路径。支持本地路径、网络路径。不支持 base64 格式。||
|@load|eventhandle||图片加载成功时触发|微信小程序 2.1.0|
|@error|eventhandle||图片加载失败时触发|微信小程序 2.1.0|
......
......@@ -16,9 +16,9 @@
**平台差异说明**
|App |H5 |微信小程序 |支付宝小程序|百度小程序 |字节跳动小程序|QQ小程序 |快应用 |360小程序|
|:-: |:-: |:-: |:-: |:-: |:-: |:-: |:-: |:-: |
|2.0+,app-vue|2.4.5+ |基础库 2.7.0+|x |需引入动态库[引入方式](/api/media/editor-context) |x |x |x |x |
|App |H5 |微信小程序 |支付宝小程序|百度小程序 |字节跳动小程序|QQ小程序 |快应用 |360小程序|快手小程序 |
|:-: |:-: |:-: |:-: |:-: |:-: |:-: |:-: |:-: |:-: |
|2.0+,app-vue|2.4.5+ |基础库 2.7.0+|x |需引入动态库[引入方式](/api/media/editor-context) |x |x |x |x |x |
editor组件目前只有H5、App的vue页面、微信小程序、百度小程序支持,其他端平台自身未提供editor组件,只能使用web-view加载web页面,也可搜索[插件市场](https://ext.dcloud.net.cn/search?q=%E5%AF%8C%E6%96%87%E6%9C%AC%E7%BC%96%E8%BE%91) 获取简单的markdown富文本编辑器
......@@ -35,7 +35,7 @@ editor组件目前只有H5、App的vue页面、微信小程序、百度小程序
| @input | eventhandle | | 否 | 编辑器内容改变时触发,detail = {html, text, delta} |
| @statuschange | eventhandle | | 否 | 通过 Context 方法改变编辑器内样式时触发,返回选区已设置的样式 |
编辑器内支持部分 HTML 标签和内样式,不支持**class****id**
编辑器内支持部分 HTML 标签和内样式,不支持**class****id**
#### 支持的标签
......@@ -46,7 +46,7 @@ editor组件目前只有H5、App的vue页面、微信小程序、百度小程序
| 行内元素 | `<span> <strong> <b> <ins> <em> <i> <u> <a> <del> <s> <sub> <sup> <img>` |
| 块级元素 | `<p> <h1> <h2> <h3> <h4> <h5> <h6> <hr> <ol> <ul> <li>` |
#### 支持的内样式
#### 支持的内样式
内联样式仅能设置在行内元素或块级元素上,不能同时设置。例如 font-size` 归类为行内元素属性,在 p 标签上设置是无效的。
......
......@@ -4,9 +4,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√(2.2.3+)|√|√|√|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√(2.2.3+)|√|√|√|√|√|√|√|√|
**Tips**
......
......@@ -17,7 +17,7 @@
|maxlength|Number|140|最大输入长度,设置为 -1 的时候不限制最大长度||
|cursor-spacing|Number|0|指定光标与键盘的距离,单位 px 。取 input 距离底部的距离和 cursor-spacing 指定的距离的最小值作为光标与键盘的距离|App、微信小程序、百度小程序、QQ小程序|
|focus|Boolean|false|获取焦点。|在 H5 平台能否聚焦以及软键盘是否跟随弹出,取决于当前浏览器本身的实现。nvue 页面不支持,需使用组件的 focus()、blur() 方法控制焦点|
|confirm-type|String|done|设置键盘右下角按钮的文字,仅在 type="text" 时生效。|微信小程序、App、H5|
|confirm-type|String|done|设置键盘右下角按钮的文字,仅在 type="text" 时生效。|微信小程序、App、H5、快手小程序|
|confirm-hold|Boolean|false|点击键盘右下角按钮时是否保持键盘不收起|App、微信小程序、支付宝小程序、百度小程序、QQ小程序|
|cursor|Number||指定focus时的光标位置||
|selection-start|Number|-1|光标起始位置,自动聚集时有效,需与selection-end搭配使用||
......@@ -27,8 +27,8 @@
|auto-blur|boolean|false|键盘收起时,是否自动失去焦点|App 3.0.0+|
|@input|EventHandle||当键盘输入时,触发input事件,event.detail = {value}|差异见下方 Tips|
|@focus|EventHandle||输入框聚焦时触发,event.detail = { value, height },height 为键盘高度|仅微信小程序、App(2.2.3+) 、QQ小程序支持 height|
|@blur|EventHandle||输入框失去焦点时触发,event.detail = {value: value}||
|@confirm|EventHandle||点击完成按钮时触发,event.detail = {value: value}|&nbsp;|
|@blur|EventHandle||输入框失去焦点时触发,event.detail = {value: value}|快手小程序不支持|
|@confirm|EventHandle||点击完成按钮时触发,event.detail = {value: value}|&nbsp;快手小程序不支持|
|@keyboardheightchange|eventhandle||键盘高度发生变化的时候触发此事件,event.detail = {height: height, duration: duration}|微信小程序基础库2.7.0+、App 3.1.0+|
**Tips**
......@@ -55,7 +55,7 @@
|:-|:-|:-|
|text|文本输入键盘||
|number|数字输入键盘|均支持,App平台、H5平台 3.1.22 以下版本 vue 页面在 iOS 平台显示的键盘包含负数和小数。|
|idcard|身份证输入键盘|微信、支付宝、百度、QQ小程序|
|idcard|身份证输入键盘|微信、支付宝、百度、QQ小程序、快手小程序|
|digit|带小数点的数字键盘|均支持,App平台、H5平台 vue 页面在 iOS 平台显示的键盘包含负数。|
|tel|电话输入键盘|仅App的nvue页面支持|
......@@ -77,11 +77,11 @@
|值|说明|平台差异说明|
|:-|:-|:-|
|send|右下角按钮为“发送”|微信、支付宝、百度小程序、app-nvue、app-vue和h5(2.9.9+,且要求设备webview内核Chrome81+、Safari13.7+)|
|send|右下角按钮为“发送”|微信、支付宝、百度小程序、快手小程序、app-nvue、app-vue和h5(2.9.9+,且要求设备webview内核Chrome81+、Safari13.7+)|
|search|右下角按钮为“搜索”||
|next|右下角按钮为“下一个”|微信、支付宝、百度小程序、app-nvue、app-vue和h5(2.9.9+,且要求设备webview内核Chrome81+、Safari13.7+)|
|next|右下角按钮为“下一个”|微信、支付宝、百度小程序、快手小程序、app-nvue、app-vue和h5(2.9.9+,且要求设备webview内核Chrome81+、Safari13.7+)|
|go|右下角按钮为“前往”||
|done|右下角按钮为“完成”|微信、支付宝、百度小程序、app-nvue、app-vue和h5(2.9.9+,且要求设备webview内核Chrome81+、Safari13.7+)|
|done|右下角按钮为“完成”|微信、支付宝、百度小程序、快手小程序、app-nvue、app-vue和h5(2.9.9+,且要求设备webview内核Chrome81+、Safari13.7+)|
- App平台的nvue页面,如果是weex编译模式,需通过weex的api设置(weex模式已被淘汰)
- App平台的vue页面及 H5平台 的弹出键盘使用的是浏览器控制的键盘,在Chrome81+、Safari13.7+之前,键盘右下角文字只能设置完成和搜索,从Chrome81+、Safari13.7+起支持设置发送、下一个。
......
......@@ -4,9 +4,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√(仅nvue)|x|√|x|x|x|x|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|快手小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√(仅nvue)|x|√|x|x|x|x|x|x|x|x|
如app平台的vue页面需要支持直播推流,需编写条件编译代码,使用 `plus.video.LivePusher`[业务指南](https://ask.dcloud.net.cn/article/13416)[规范文档](http://www.html5plus.org/doc/zh_cn/video.html#plus.video.LivePusher)。还是推荐直接使用nvue里的`live-pusher`组件。
......
......@@ -6,9 +6,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|1.63+|1.9.0+|√|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|1.63+|1.9.0+|√|x|x|
**属性说明**
......
......@@ -14,9 +14,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|√|√|√|
**属性说明**
......@@ -36,9 +36,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√|√|√|√|√|x|√|√|√|√|
**属性说明**
......@@ -46,19 +46,19 @@
|:-|:-|:-|:-|:-|
|direction|String|none|movable-view的移动方向,属性值有all、vertical、horizontal、none||
|inertia|Boolean|false|movable-view是否带有惯性|微信小程序、支付宝小程序、App、H5、百度小程序|
|out-of-bounds|Boolean|false|超过可移动区域后,movable-view是否还可以移动|微信小程序、支付宝小程序、App、H5、百度小程序|
|out-of-bounds|Boolean|false|超过可移动区域后,movable-view是否还可以移动|微信小程序、支付宝小程序、App、H5、百度小程序、快手小程序|
|x|Number / String||定义x轴方向的偏移,如果x的值不在可移动范围内,会自动移动到可移动范围;改变x的值会触发动画||
|y|Number / String||定义y轴方向的偏移,如果y的值不在可移动范围内,会自动移动到可移动范围;改变y的值会触发动画||
|damping|Number|20|阻尼系数,用于控制x或y改变时的动画和过界回弹的动画,值越大移动越快|微信小程序、支付宝小程序、App、H5、百度小程序|
|friction|Number|2|摩擦系数,用于控制惯性滑动的动画,值越大摩擦力越大,滑动越快停止;必须大于0,否则会被设置成默认值|微信小程序、支付宝小程序、App、H5、百度小程序|
|disabled|Boolean|false|是否禁用||
|scale|Boolean|false|是否支持双指缩放,默认缩放手势生效区域是在movable-view内|微信小程序、支付宝小程序、App、H5|
|scale-min|Number|0.5|定义缩放倍数最小值|微信小程序、支付宝小程序、App、H5|
|scale-max|Number|10|定义缩放倍数最大值|微信小程序、支付宝小程序、App、H5|
|scale-value|Number|1|定义缩放倍数,取值范围为 0.5 - 10|微信小程序、支付宝小程序、App、H5|
|animation|Boolean|true|是否使用动画|微信小程序、支付宝小程序、App、H5、百度小程序|
|scale|Boolean|false|是否支持双指缩放,默认缩放手势生效区域是在movable-view内|微信小程序、支付宝小程序、App、H5、快手小程序|
|scale-min|Number|0.5|定义缩放倍数最小值|微信小程序、支付宝小程序、App、H5、快手小程序|
|scale-max|Number|10|定义缩放倍数最大值|微信小程序、支付宝小程序、App、H5、快手小程序|
|scale-value|Number|1|定义缩放倍数,取值范围为 0.5 - 10|微信小程序、支付宝小程序、App、H5、快手小程序|
|animation|Boolean|true|是否使用动画|微信小程序、支付宝小程序、App、H5、百度小程序、快手小程序|
|@change|EventHandle||拖动过程中触发的事件,event.detail = {x: x, y: y, source: source},其中source表示产生移动的原因,值可为touch(拖动)、touch-out-of-bounds(超出移动范围)、out-of-bounds(超出移动范围后的回弹)、friction(惯性)和空字符串(setData)||
|@scale|EventHandle||缩放过程中触发的事件,event.detail = {x: x, y: y, scale: scale},|微信小程序、App、H5、百度小程序|
|@scale|EventHandle||缩放过程中触发的事件,event.detail = {x: x, y: y, scale: scale},|微信小程序、App、H5、百度小程序、快手小程序|
除了基本事件外,movable-view提供了两个特殊事件
......
......@@ -4,9 +4,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√ 2.6.3+|2.6.3+|√ 2.9.0+|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√ 2.6.3+|2.6.3+|√ 2.9.0+|√|√|√|√|x|
从HBuilderX 2.9.3起,编译到所有平台均支持`navigation-bar`,但编译到微信时,受微信基础库版本限制;编译到其他平台不受平台版本限制。
......
......@@ -4,9 +4,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|√|x|x|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快应用|360小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|x|x|√|x|√|x|√|x|x|x|
**Tips**
......
### ad
Banner 广告。
仅微信小程序平台支持,[规范详情](https://developers.weixin.qq.com/miniprogram/dev/component/ad.html)
### official-account
公众号关注组件。当用户扫小程序码打开小程序时,开发者可在小程序内配置公众号关注组件,方便用户快捷关注公众号,可嵌套在原生组件内。
仅微信小程序平台支持,[规范详情](https://developers.weixin.qq.com/miniprogram/dev/component/official-account.html)
\ No newline at end of file
......@@ -10,9 +10,9 @@
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√ 2.6.3+|2.6.3+|√ 2.9.0+|√|√|√|√|
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|快手小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√ 2.6.3+|2.6.3+|√ 2.9.0+|√|√|√|√|x|
从HBuilderX 2.6.3起,编译到所有平台均支持`page-meta`,但编译到微信时,受微信基础库版本限制;编译到其他平台不受平台版本限制。
......
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册