Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
unidocs-uni-app-x-zh
提交
d400ea69
U
unidocs-uni-app-x-zh
项目概览
DCloud
/
unidocs-uni-app-x-zh
通知
144
Star
2
Fork
33
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
9
列表
看板
标记
里程碑
合并请求
11
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
unidocs-uni-app-x-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
9
Issue
9
列表
看板
标记
里程碑
合并请求
11
合并请求
11
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
d400ea69
编写于
12月 14, 2023
作者:
W
wanganxp
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
x
上级
639ca6ef
变更
9
隐藏空白更改
内联
并排
Showing
9 changed file
with
91 addition
and
62 deletion
+91
-62
docs/api/exit.md
docs/api/exit.md
+13
-11
docs/api/facial-recognition-verify.md
docs/api/facial-recognition-verify.md
+4
-3
docs/api/get-univerify-manager.md
docs/api/get-univerify-manager.md
+10
-5
docs/api/install-apk.md
docs/api/install-apk.md
+4
-0
docs/api/uni-verify.md
docs/api/uni-verify.md
+0
-30
docs/collocation/app.md
docs/collocation/app.md
+17
-5
docs/collocation/manifest.md
docs/collocation/manifest.md
+2
-1
docs/project.md
docs/project.md
+35
-1
docs/readme.md
docs/readme.md
+6
-6
未找到文件。
docs/api/exit.md
浏览文件 @
d400ea69
...
...
@@ -16,16 +16,7 @@ Android平台的应用退出分热退出和冷退出。
基本上主流Android App都是热退出。本API也是热退出。
热退出,即通知了os:这个app用户不用了,在os需要时可以回收。如果在os回收之前,用户又启动这个app,会感觉启动速度更快一些。
### 切换应用到后台@back
如不希望应用退出,可使用以下方法将应用切换到后台:
```
ts
// #ifdef APP-ANDROID
UTSAndroid
.
getUniActivity
()?.
moveTaskToBack
(
true
)
// #endif
```
热退出,即通知了os:这个App用户不用了,在os需要时可以回收。如果在os回收之前,用户又启动这个App,会感觉启动速度更快一些。
<!-- UTSAPIJSON.exit.tutorial -->
...
...
@@ -33,4 +24,15 @@ Android平台的应用退出分热退出和冷退出。
<!-- UTSAPIJSON.general_type.name -->
<!-- UTSAPIJSON.general_type.param -->
\ No newline at end of file
<!-- UTSAPIJSON.general_type.param -->
## 切换应用到后台@back
有的Android App,点back后不询问用户,直接隐藏到了后台。这种做法占用手机的资源一些,但确实也有一些App是这么做的。
Android的activity提供了将应用切换到后台的方法:
```
ts
// #ifdef APP-ANDROID
UTSAndroid
.
getUniActivity
()?.
moveTaskToBack
(
true
)
// #endif
```
docs/api/facial-recognition-verify.md
浏览文件 @
d400ea69
...
...
@@ -2,9 +2,10 @@
uni实人认证是DCloud与合作伙伴共同推出的金融级实人认证服务,通过对比人脸、活体检测、姓名和身份证号码,来确认用户身份的有效性。
该业务的完整业务介绍另见:
[
实人认证
](
https://doc.dcloud.net.cn/uniCloud/frv/intro.html
)
本文是 uni-app x 中涉及该业务的API的介绍。
实人认证涉及业务开通和付费,涉及客户端和服务器交互,有较多文档:
1.
业务介绍:介绍业务流程、开通和付费。
[
详见
](
https://doc.dcloud.net.cn/uniCloud/frv/intro.html
)
2.
客户端API,即本文
3.
服务器API,
[
详见
](
https://doc.dcloud.net.cn/uniCloud/frv/dev.html
)
## uni.getFacialRecognitionMetaInfo() @getfacialrecognitionmetainfo
...
...
docs/api/get-univerify-manager.md
浏览文件 @
d400ea69
...
...
@@ -19,13 +19,12 @@ App一键登陆是替代短信验证码登录的更优选择:对开发者而
<!-- UTSAPIJSON.getUniverifyManager.tutorial -->
<!-- UTSAPIJSON.getUniverifyManager.example -->
## cause个推sdk错误码及运营商错误码汇总
## Tips
-
运营商对一键登陆给用户呈现的ui有强制要求:必须有运营商的隐私协议和服务条款、不得默认勾选同意、手机号掩码显示、需要用户手动再点按钮获取而不能自动获取。
-
目前一键登陆的UI可自定义性有限。仅支持配置登录页全屏/半屏、登录页背景色、登录按钮文案以及登录页logo。后续会继续扩展自定义性
。
上述API不管是预登陆还是登录,失败时返回的uni Error错误对象,有一个属性cause,它表示底层的错误来源,这里包含了个推的个验sdk和运营商sdk的详细信息。比如没有sim卡或未开启蜂窝网络。
在大多数情况下,开发者需要把这些更为详细的错误提示给用户,以引导用户正确使用一键登陆
。
## 个推sdk错误码及运营商错误码汇总
| 个推sdk错误码 | 错误信息 |
|---|---|
| -10000 | sdk没有初始化,请先初始化sdk |
...
...
@@ -192,6 +191,12 @@ App一键登陆是替代短信验证码登录的更优选择:对开发者而
| 80800 | WIFI切换异常 |
| 80801 | WIFI切换超时 |
## Tips
-
运营商对一键登陆给用户呈现的ui有强制要求:必须有运营商的隐私协议和服务条款、不得默认勾选同意、手机号掩码显示、需要用户手动再点按钮获取而不能自动获取。
-
目前一键登陆的UI可自定义性有限。仅支持配置登录页全屏/半屏、登录页背景色、登录按钮文案以及登录页logo。后续会继续扩展自定义性。
<!-- UTSAPIJSON.getUniverifyManager.example -->
<!-- UTSAPIJSON.general_type.name -->
<!-- UTSAPIJSON.general_type.param -->
\ No newline at end of file
docs/api/install-apk.md
浏览文件 @
d400ea69
...
...
@@ -2,6 +2,10 @@
<!-- UTSAPIJSON.installApk.description -->
在HBuilderX 3.99以前,uni.install是ext api,需单独
[
下载
](
https://ext.dcloud.net.cn/plugin?id=15118
)
。从HBuilderX 3.99起 uni-app x 内置了该api,无需再单独下载。
安装Apk最常见的场景是App的升级,更推荐使用uni的
[
App升级中心
](
https://doc.dcloud.net.cn/uniCloud/upgrade-center.html
)
,这是一个云端一体开源项目,想达到该项目的体验细节需要大量代码,不如直接拿走使用。
<!-- UTSAPIJSON.installApk.param -->
<!-- UTSAPIJSON.installApk.returnValue -->
...
...
docs/api/uni-verify.md
已删除
100644 → 0
浏览文件 @
639ca6ef
## uni.getUniverifyManager() @getuniverifymanager
<!-- UTSAPIJSON.getUniverifyManager.description -->
App一键登陆,封装了个推的一键登陆sdk,其内部再次封装了中国三大电信运营商提供的sdk。通过运营商提供的服务,可以在手机sim卡信号正常的情况下,通过云端接口获取到当前用户的手机号。
App一键登陆是替代短信验证码登录的更优选择:对开发者而言更便宜、对用户而言体验更好。
一键登陆涉及业务开通和付费,涉及客户端和服务器交互,有较多文档:
1.
业务介绍:介绍业务流程、开通和付费。
[
详见
](
https://uniapp.dcloud.net.cn/univerify.html
)
2.
客户端API,即本文
3.
服务器API,
[
详见
](
https://doc.dcloud.net.cn/uniCloud/uni-login/dev.html
)
<!-- UTSAPIJSON.getUniverifyManager.param -->
<!-- UTSAPIJSON.getUniverifyManager.returnValue -->
<!-- UTSAPIJSON.getUniverifyManager.compatibility -->
<!-- UTSAPIJSON.getUniverifyManager.tutorial -->
<!-- UTSAPIJSON.uni-verify.example -->
## Tips
-
运营商对一键登陆给用户呈现的ui有强制要求。(需补充细节)
-
目前一键登陆的UI可自定义性有限。(需补充细节)
<!-- UTSAPIJSON.general_type.name -->
<!-- UTSAPIJSON.general_type.param -->
\ No newline at end of file
docs/collocation/app.md
浏览文件 @
d400ea69
...
...
@@ -16,7 +16,7 @@
|:-|:-|:-|
|onLaunch|当
`uni-app-x`
初始化完成时触发(全局只触发一次),参数为应用启动参数,同
[
uni.getLaunchOptionsSync
](
../api/get-launch-options-sync.md#getlaunchoptionssync
)
的返回值||
|onShow|当
`uni-app-x`
启动,或从后台进入前台显示,参数为应用启动参数,同
[
uni.getLaunchOptionsSync
](
../api/get-launch-options-sync.md#getlaunchoptionssync
)
的返回值||
|onHide|当
`uni-app-x`
从前台进入后台||
|onHide|当
`uni-app-x`
从前台进入后台
,包括手机息屏
||
|onLastPageBackPress|最后一个页面按下Android back键,常用于自定义退出|app-uvue-android 3.9+|
|onExit|监听应用退出|app-uvue-android 3.9+|
...
...
@@ -38,6 +38,21 @@
},
onLastPageBackPress
:
function
()
{
console
.
log
(
'
App LastPageBackPress
'
)
// 2秒内连按2次back,退出app
if
(
firstBackTime
==
0
)
{
uni
.
showToast
({
title
:
'
再按一次退出应用
'
,
position
:
'
bottom
'
,
})
firstBackTime
=
Date
.
now
()
setTimeout
(()
=>
{
firstBackTime
=
0
},
2000
)
}
else
if
(
Date
.
now
()
-
firstBackTime
<
2000
)
{
firstBackTime
=
Date
.
now
()
uni
.
exit
()
}
// 还有一些应用按1次back直接将应用切到后台,详见https://doc.dcloud.net.cn/uni-app-x/api/exit.html#back
}
}
</script>
...
...
@@ -46,7 +61,6 @@
**注意**
-
**应用生命周期仅可在`App.uvue`中监听,在其它页面监听无效**
。
-
应用启动参数,可以在API
`uni.getLaunchOptionsSync`
获取,
[
详见
](
../api/get-launch-options-sync.md#getlaunchoptionssync
)
<!-- - onPageNotFound 页面实际上已经打开了(比如通过分享卡片、小程序码)且发现页面不存在,才会触发,api 跳转不存在的页面不会触发(如 uni.navigateTo) -->
## globalData
...
...
@@ -87,10 +101,8 @@
**注意:**
`uni-app x`
中
`globalData`
的数据结构与类型通过
`App.uvue`
中的
`globalData`
初始值定义,后续只能读取或修改,不能新增或删除。
globalData是简单的全局变量,其他状态管理方式,可参考文档
[
全局变量和状态管理
](
../tutorial/store.md
)
。
## 全局样式
在
`App.uvue`
中,可以定义一些全局通用样式,这里定义的class,每个页面都可以直接使用。
在
`App.uvue`
中,可以定义一些全局通用样式,这里定义的class,每个页面都可以直接使用。
\ No newline at end of file
docs/collocation/manifest.md
浏览文件 @
d400ea69
...
...
@@ -37,7 +37,8 @@ uni-app x 的权限配置,移入了[AndroidManifest.xml](https://uniapp.dcloud
使用
[
uni内置模块
](
#utsmodules
)
时,云端打包会自动添加模块需要的Android权限,不需要在
[
AndroidManifest.xml
](
https://uniapp.dcloud.net.cn/tutorial/app-nativeresource-android.md#permissions
)
中配置。
HBuilderX3.97+版本标准基座已经包含了所有Android权限,在 uvue 页面中直接通过 uts 调用需要权限的 Android 系统 API 时,使用标准基座真机运行可直接通过
[
UTSAndroid.requestSystemPermission
](
../uts/utsandroid.md#requestSystemPermission
)
申请;使用自定义基座则需要在项目的
[
AndroidManifest.xml
](
https://uniapp.dcloud.io/tutorial/app-nativeresource-android.md#permissions
)
中配置要使用的权限,重新提交云端打包。
-
HBuilderX3.97+版本标准基座已经包含了所有Android权限,在 uvue 页面中直接通过 uts 调用需要权限的 Android 系统 API 时,使用标准基座真机运行可直接通过
[
UTSAndroid.requestSystemPermission
](
../uts/utsandroid.md#requestSystemPermission
)
申请;
-
使用自定义基座则需要在项目的
[
AndroidManifest.xml
](
https://uniapp.dcloud.io/tutorial/app-nativeresource-android.md#permissions
)
中配置要使用的权限,重新提交云端打包。
#### DISTRIBUTE配置 @app-distribute
...
...
docs/project.md
浏览文件 @
d400ea69
...
...
@@ -32,19 +32,53 @@ uni-app x的项目结构与[uni-app js引擎版的项目结构](https://uniapp.d
基于uts的插件,可以在uni-app x和uni-app上通用。
<pre
v-pre=
""
data-lang=
""
>
<code
class=
"lang-"
style=
"padding:0"
>
┌─uniCloud 云空间目录,支付宝小程序云为uniCloud-alipay,阿里云为uniCloud-aliyun,腾讯云为uniCloud-tcb(详见
<a
href=
"https://doc.dcloud.net.cn/uniCloud/quickstart?structure&id=structure"
>
uniCloud
</a>
)
│─components 符合vue组件规范的uni-app x组件目录
│ └─comp-a.vue 可复用的a组件
├─utssdk 存放uts文件
├─pages 业务页面文件存放的目录
│ ├─index
│ │ └─index.uvue index页面
│ └─list
│ └─list.uvue list页面
├─static 存放应用引用的本地静态资源(如图片、字体、音视频等)的目录,
<b>
注意:
</b>
静态资源都应存放于此目录
<a
href=
"https://doc.dcloud.net.cn/uni-app-x/compiler/#static"
>
详见
</a>
├─uni_modules 存放uni_module
<a
href=
"https://uniapp.dcloud.net.cn/plugin/uni_modules.html"
>
详见
</a>
├─platforms 存放各平台专用页面的目录,
<a
href=
"https://uniapp.dcloud.net.cn/tutorial/platform.html#preprocessor"
>
详见
</a>
├─nativeResources App端原生资源目录
│ ├─android Android原生资源目录
<a
href=
"https://uniapp.dcloud.net.cn/tutorial/app-nativeresource-android"
>
详见
</a>
| └─ios iOS原生资源目录
<a
href=
"https://uniapp.dcloud.net.cn/tutorial/app-nativeresource-ios.html#%E8%B5%84%E6%BA%90%E6%96%87%E4%BB%B6-bundle-resources"
>
详见
</a>
├─hybrid App端存放web-view组件使用的本地html文件的目录,
<a
href=
"./component/web-view"
>
详见
</a>
├─unpackage 非工程代码,一般存放运行或发行的编译结果、App自定义基座
├─main.uts Vue初始化入口文件
├─App.uvue 应用配置,用来配置App全局样式以及监听
<a
href=
"/collocation/App#应用生命周期"
>
详见
</a>
├─pages.json 配置页面路由、导航条、选项卡等页面类信息,
<a
href=
"/collocation/pages"
>
详见
</a>
├─manifest.json 配置应用名称、appid、logo、版本等打包信息,
<a
href=
"/collocation/manifest"
>
详见
</a>
├─AndroidManifest.xml Android原生应用清单文件
<a
href=
"https://uniapp.dcloud.net.cn/tutorial/app-nativeresource-android"
>
详见
</a>
├─Info.plist iOS原生应用配置文件
<a
href=
"https://uniapp.dcloud.net.cn/tutorial/app-nativeresource-ios"
>
详见
</a>
└─uni.scss 内置的常用样式变量
</code>
</pre>
## 运行
uni-app x的真机运行基座,和uni-app js引擎版不同,是一个绿色圆形的U(之前是方型H),基座名称默认为
`uni-app x`
(之前叫HBuilder)。
uni-app x的真机运行基座
(playground)
,和uni-app js引擎版不同,是一个绿色圆形的U(之前是方型H),基座名称默认为
`uni-app x`
(之前叫HBuilder)。
![](
./static/playground.jpg
)
-
uni-app x基座,只能运行uni-app x项目,包名是io.dcloud.uniappx
-
HBuilder基座,可以运行5+App、wap2app和uni-app js引擎版。包名是io.dcloud.HBuilder
标准基座使用的图标、包名、证书以及配置的三方sdk的appkey等各种原生信息,都是DCloud的。这些无法更改。
当需要使用自己的包名、证书和原生配置进行运行调试时,需在打包界面勾选打包自定义基座,打包后的自定义基座会放置在项目的unpackage目录下,然后在运行项目时的界面中可以选择自定义基座来运行。
uni-app x运行时,控制台右上角可以选择开启原生日志。
目前仅支持真机运行,不支持断点debug。
## 发行
uni-app x目前只能打包apk。
暂不支持渠道包。
...
...
docs/readme.md
浏览文件 @
d400ea69
...
...
@@ -136,12 +136,12 @@ uni-app js引擎版,支持 plus API 和 weex API。但 uni-app x 中,不再
uni-app x支持的API包括:
1.
uts的
api
[
详见
](
./uts/buildin-object-api/global.md
)
2.
全局
api
,前面不需要加
`uni.`
。如
[
getApp
](
./api/get-app.md
)
、
[
getCurrentPages
](
./api/get-current-pages.md
)
3.
uni.xxx的内置
api
。数量较多,
[
详见
](
./api/README.md
)
4.
uniCloud.xxx的内置
api
。
[
详见
](
./api/unicloud/README.md
)
5.
dom的
api
[
详见
](
./dom/README.md
)
6.
原生
api
1.
uts的
API
[
详见
](
./uts/buildin-object-api/global.md
)
2.
全局
API
,前面不需要加
`uni.`
。如
[
getApp
](
./api/get-app.md
)
、
[
getCurrentPages
](
./api/get-current-pages.md
)
3.
uni.xxx的内置
API
。数量较多,
[
详见
](
./api/README.md
)
4.
uniCloud.xxx的内置
API
。
[
详见
](
./api/unicloud/README.md
)
5.
dom的
API
[
详见
](
./dom/README.md
)
6.
原生
API
由于uts可以直接调用Android和iOS的api,所以os和三方sdk的能力都可以在uts中调用。如下:
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录