From d400ea69d692281604d3d32ac94b5961bfefac9e Mon Sep 17 00:00:00 2001 From: wanganxp Date: Thu, 14 Dec 2023 05:08:39 +0800 Subject: [PATCH] x --- docs/api/exit.md | 24 ++++++++++-------- docs/api/facial-recognition-verify.md | 7 +++--- docs/api/get-univerify-manager.md | 15 +++++++---- docs/api/install-apk.md | 4 +++ docs/api/uni-verify.md | 30 ---------------------- docs/collocation/app.md | 22 ++++++++++++---- docs/collocation/manifest.md | 3 ++- docs/project.md | 36 ++++++++++++++++++++++++++- docs/readme.md | 12 ++++----- 9 files changed, 91 insertions(+), 62 deletions(-) delete mode 100644 docs/api/uni-verify.md diff --git a/docs/api/exit.md b/docs/api/exit.md index 6c065d8b..ddea4a56 100644 --- a/docs/api/exit.md +++ b/docs/api/exit.md @@ -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,会感觉启动速度更快一些。 @@ -33,4 +24,15 @@ Android平台的应用退出分热退出和冷退出。 - \ No newline at end of file + + +## 切换应用到后台@back + +有的Android App,点back后不询问用户,直接隐藏到了后台。这种做法占用手机的资源一些,但确实也有一些App是这么做的。 + +Android的activity提供了将应用切换到后台的方法: +```ts +// #ifdef APP-ANDROID + UTSAndroid.getUniActivity()?.moveTaskToBack(true) +// #endif +``` diff --git a/docs/api/facial-recognition-verify.md b/docs/api/facial-recognition-verify.md index eb475aa9..0cc2a737 100644 --- a/docs/api/facial-recognition-verify.md +++ b/docs/api/facial-recognition-verify.md @@ -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 diff --git a/docs/api/get-univerify-manager.md b/docs/api/get-univerify-manager.md index 60eb8110..c59bbe56 100644 --- a/docs/api/get-univerify-manager.md +++ b/docs/api/get-univerify-manager.md @@ -19,13 +19,12 @@ App一键登陆是替代短信验证码登录的更优选择:对开发者而 - +## 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。后续会继续扩展自定义性。 + + + \ No newline at end of file diff --git a/docs/api/install-apk.md b/docs/api/install-apk.md index 5592f4d4..ef9a2e2e 100644 --- a/docs/api/install-apk.md +++ b/docs/api/install-apk.md @@ -2,6 +2,10 @@ +在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),这是一个云端一体开源项目,想达到该项目的体验细节需要大量代码,不如直接拿走使用。 + diff --git a/docs/api/uni-verify.md b/docs/api/uni-verify.md deleted file mode 100644 index 0694e1a5..00000000 --- a/docs/api/uni-verify.md +++ /dev/null @@ -1,30 +0,0 @@ -## uni.getUniverifyManager() @getuniverifymanager - - - -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) - - - - - - - - - - - -## Tips -- 运营商对一键登陆给用户呈现的ui有强制要求。(需补充细节) -- 目前一键登陆的UI可自定义性有限。(需补充细节) - - - - \ No newline at end of file diff --git a/docs/collocation/app.md b/docs/collocation/app.md index 9ee4825a..7325aa01 100644 --- a/docs/collocation/app.md +++ b/docs/collocation/app.md @@ -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 } } @@ -46,7 +61,6 @@ **注意** - **应用生命周期仅可在`App.uvue`中监听,在其它页面监听无效**。 - 应用启动参数,可以在API `uni.getLaunchOptionsSync`获取,[详见](../api/get-launch-options-sync.md#getlaunchoptionssync) - ## 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 diff --git a/docs/collocation/manifest.md b/docs/collocation/manifest.md index 1847b9bd..a85370d2 100644 --- a/docs/collocation/manifest.md +++ b/docs/collocation/manifest.md @@ -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 diff --git a/docs/project.md b/docs/project.md index 737954dd..21ef45df 100644 --- a/docs/project.md +++ b/docs/project.md @@ -32,19 +32,53 @@ uni-app x的项目结构与[uni-app js引擎版的项目结构](https://uniapp.d 基于uts的插件,可以在uni-app x和uni-app上通用。 +
+	
+┌─uniCloud              云空间目录,支付宝小程序云为uniCloud-alipay,阿里云为uniCloud-aliyun,腾讯云为uniCloud-tcb(详见uniCloud)
+│─components            符合vue组件规范的uni-app x组件目录
+│  └─comp-a.vue         可复用的a组件
+├─utssdk                存放uts文件
+├─pages                 业务页面文件存放的目录
+│  ├─index
+│  │  └─index.uvue      index页面
+│  └─list
+│     └─list.uvue       list页面
+├─static                存放应用引用的本地静态资源(如图片、字体、音视频等)的目录,注意:静态资源都应存放于此目录  详见
+├─uni_modules           存放uni_module 详见
+├─platforms             存放各平台专用页面的目录,详见
+├─nativeResources       App端原生资源目录
+│  ├─android            Android原生资源目录 详见
+|  └─ios                iOS原生资源目录 详见
+├─hybrid                App端存放web-view组件使用的本地html文件的目录,详见
+├─unpackage             非工程代码,一般存放运行或发行的编译结果、App自定义基座
+├─main.uts              Vue初始化入口文件
+├─App.uvue              应用配置,用来配置App全局样式以及监听 详见
+├─pages.json            配置页面路由、导航条、选项卡等页面类信息,详见
+├─manifest.json         配置应用名称、appid、logo、版本等打包信息,详见
+├─AndroidManifest.xml   Android原生应用清单文件 详见
+├─Info.plist            iOS原生应用配置文件 详见
+└─uni.scss              内置的常用样式变量
+	
+
+ ## 运行 -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。 暂不支持渠道包。 diff --git a/docs/readme.md b/docs/readme.md index fe6df7e8..d2cb8495 100644 --- a/docs/readme.md +++ b/docs/readme.md @@ -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中调用。如下: -- GitLab