Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
unidocs-uni-app-x-zh
提交
ae906051
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看板
提交
ae906051
编写于
12月 22, 2023
作者:
W
wanganxp
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
X
上级
551aa4c2
变更
5
显示空白变更内容
内联
并排
Showing
5 changed file
with
52 addition
and
18 deletion
+52
-18
docs/api/README.md
docs/api/README.md
+4
-4
docs/api/ext.md
docs/api/ext.md
+33
-1
docs/readme.md
docs/readme.md
+10
-8
docs/sample.md
docs/sample.md
+4
-2
docs/uts/utsandroid.md
docs/uts/utsandroid.md
+1
-3
未找到文件。
docs/api/README.md
浏览文件 @
ae906051
...
@@ -2,13 +2,13 @@
...
@@ -2,13 +2,13 @@
uni-app x项目的uts代码中可以使用很多API。包括:
uni-app x项目的uts代码中可以使用很多API。包括:
-
uts的api
[
详见
](
../uts/buildin-object-api/global
.md
)
-
uts的api
,包括
[
内置对象
](
../uts/buildin-object-api/global.md
)
,以及平台专有对象
[
UTSAndroid
](
../uts/utsandroid.md
)
和
[
UTSiOS
](
../uts/utsios
.md
)
-
全局api,前面不需要加
`uni.`
。如
`getApp`
-
全局api,前面不需要加
`uni.`
。如
`getApp`
-
uni.xxx的内置api。见左侧
-
uni.xxx的内置api。见左侧
-
uniCloud.xxx的内置api
。见左侧
-
uniCloud.xxx的内置api
[
详见
](
./unicloud/README.md
)
-
dom的api
[
详见
](
dom/README.md
)
-
dom的api
[
详见
](
../
dom/README.md
)
-
vue的api
[
详见
](
../vue/README.md
)
-
vue的api
[
详见
](
../vue/README.md
)
-
原生api
-
os
原生api
由于uts可以直接调用Android和iOS的api,所以os和三方sdk的能力都可以在uts中调用。如下:
由于uts可以直接调用Android和iOS的api,所以os和三方sdk的能力都可以在uts中调用。如下:
...
...
docs/api/ext.md
浏览文件 @
ae906051
...
@@ -9,7 +9,38 @@
...
@@ -9,7 +9,38 @@
-
[
扫码
](
https://ext.dcloud.net.cn/search?q=%E6%89%AB%E7%A0%81&cat1=8&type=UpdatedDate
)
:
`uni.scanCode`
-
[
扫码
](
https://ext.dcloud.net.cn/search?q=%E6%89%AB%E7%A0%81&cat1=8&type=UpdatedDate
)
:
`uni.scanCode`
-
[
文件选择
](
https://ext.dcloud.net.cn/search?q=%E6%96%87%E4%BB%B6%E9%80%89%E6%8B%A9&cat1=8&cat2=81
)
:
`uni.chooseFile`
-
[
文件选择
](
https://ext.dcloud.net.cn/search?q=%E6%96%87%E4%BB%B6%E9%80%89%E6%8B%A9&cat1=8&cat2=81
)
:
`uni.chooseFile`
-
[
蓝牙
](
https://ext.dcloud.net.cn/search?q=%E8%93%9D%E7%89%99&orderBy=Relevance&cat1=8&cat2=81
)
-
[
蓝牙
](
https://ext.dcloud.net.cn/search?q=%E8%93%9D%E7%89%99&orderBy=Relevance&cat1=8&cat2=81
)
-
[
nfc
](
https://ext.dcloud.net.cn/search?q=nfc&orderBy=Relevance&cat1=8&cat2=81
)
-
[
NFC
](
https://ext.dcloud.net.cn/search?q=nfc&orderBy=Relevance&cat1=8&cat2=81
)
-
播放音频:
`uni.getBackgroundAudioManager`
、
`uni.createInnerAudioContext`
,参考如下代码:
```
vue
<
template
>
<button
@
click=
"playAudio"
>
播放音频
</button>
</
template
>
<
script
>
import
MediaPlayer
from
"
android.media.MediaPlayer
"
;
//hx中对这里alt+左键转到定义,查看该库的方法清单
export
default
{
data
()
{
return
{}
},
methods
:
{
playAudio
()
{
let
mediaPlayer
=
new
MediaPlayer
()
try
{
mediaPlayer
.
setDataSource
(
"
https://www.w3cschool.cn/statics/demosource/horse.mp3
"
)
// 网络音频文件URL //大体积的网络音频应在协程里加载,否则容易卡ui
// mediaPlayer.setDataSource(UTSAndroid.convert2AbsFullPath("/static/horse.mp3")) // 本地音频文件
mediaPlayer
.
prepare
()
mediaPlayer
.
start
()
// 开始播放
// mediaPlayer.pause()
// mediaPlayer.stop()
// mediaPlayer.release() // 释放MediaPlayer对象
// 倍速播放参考:https://developer.android.google.cn/reference/android/media/MediaPlayer#setPlaybackParams(android.media.PlaybackParams)
}
catch
(
e
)
{
console
.
log
(
e
);
}
}
}
}
</
script
>
```
uni-app x 中不再支持plus和weex的API。过于plus api中一些常用的api,在uni-app x中进行了替换增补。
uni-app x 中不再支持plus和weex的API。过于plus api中一些常用的api,在uni-app x中进行了替换增补。
-
plus.runtime.quit =>
[
uni.exit
](
./exit.md
)
-
plus.runtime.quit =>
[
uni.exit
](
./exit.md
)
...
@@ -22,6 +53,7 @@ uni-app x 中不再支持plus和weex的API。过于plus api中一些常用的api
...
@@ -22,6 +53,7 @@ uni-app x 中不再支持plus和weex的API。过于plus api中一些常用的api
<view>
<view>
<button
@
click=
"openSchema('https://uniapp.dcloud.io/uni-app-x')"
>
使用浏览器打开指定URL
</button>
<button
@
click=
"openSchema('https://uniapp.dcloud.io/uni-app-x')"
>
使用浏览器打开指定URL
</button>
<button
@
click=
"openSchema('market://details?id=com.tencent.mm')"
>
使用应用商店打开指定App
</button>
<button
@
click=
"openSchema('market://details?id=com.tencent.mm')"
>
使用应用商店打开指定App
</button>
<button
@
click=
"openSchema('androidamap://viewMap?sourceApplication=Hello%20uni-app&poiname=DCloud&lat=39.9631018208&lon=116.3406135236&dev=0')"
>
打开地图坐标
</button>
</view>
</view>
</
template
>
</
template
>
<
script
>
<
script
>
...
...
docs/readme.md
浏览文件 @
ae906051
...
@@ -181,21 +181,23 @@ uni.的api,大多是uts开发的,它们会陆续开源在[uni-api](https://g
...
@@ -181,21 +181,23 @@ uni.的api,大多是uts开发的,它们会陆续开源在[uni-api](https://g
## 6. 插件生态
## 6. 插件生态
uni-app x编译到web和小程序时,所有js库仍然可用。但在App平台,由于没有js引擎,所以无法使用js生态(除非使用web-view组件)。
uni-app x编译到web和小程序时,所有js库仍然可用。但在App平台,由于没有js引擎,所以无法使用js生态(除非使用web-view组件
或自己集成一个js引擎
)。
uni-app x App平台的插件生态来源于:
uni-app x App平台的插件生态来源于:
1.
原生生态。比如上述示例代码中获取手机型号。以及各种原生sdk的直接调用。
1.
原生生态。比如上述示例代码中获取手机型号。以及各种原生sdk的直接调用。
2.
ts生态的迁移。很多js库是ts编写的,如果没有使用uts不支持的语法,ts代码就可以使用。如果略有不同,也可以稍加改造ts以适配uts。
2.
ts生态的迁移。很多js库是ts编写的,如果没有使用uts不支持的语法,ts代码就可以使用。如果略有不同,也可以稍加改造ts以适配uts。
[
uni插件市场
](
https://ext.dcloud.net.cn/
)
是插件的聚集地,这里有2种插件适用于uni-app x。
uni-app x支持npm,但npm的大多数库是for web的,无法跨端,这些库只能在uni-app x编译为web时使用。当然如果有兼容uni-app x的全端库,可以使用,比如这个库
[
lwu-css
](
https://www.npmjs.com/package/lwu-css
)
。
1.
uts插件
[
uni插件市场
](
https://ext.dcloud.net.cn/
)
是跨端插件的聚集地,这里有2种插件适用于uni-app x。
1.
uts插件(原生插件)
uts插件封装原生能力,包括os能力或三方sdk。可以做API插件,也可以做组件插件。
uts插件封装原生能力,包括os能力或三方sdk。可以做API插件,也可以做组件插件。
uts插件可同时在 uni-app js引擎版 和 uni-app x 的app平台上运行。
uts插件可同时在 uni-app js引擎版 和 uni-app x 的app平台上运行。
uts插件分类直达:
[
https://ext.dcloud.net.cn/?cat1=8&type=UpdatedDate
](
https://ext.dcloud.net.cn/?cat1=8&type=UpdatedDate
)
uts插件分类直达:
[
https://ext.dcloud.net.cn/?cat1=8&type=UpdatedDate
](
https://ext.dcloud.net.cn/?cat1=8&type=UpdatedDate
)
uni-app js版的“App原生语言插件”
无法在 uni-app x 中运行。
之前uni-app js版的“App原生语言插件”,因依赖js引擎,所以
无法在 uni-app x 中运行。
2.
前端插件
2.
前端插件
...
@@ -207,16 +209,17 @@ uvue组件、uts sdk、uni-app x前端页面/项目模板。这些前端代码
...
@@ -207,16 +209,17 @@ uvue组件、uts sdk、uni-app x前端页面/项目模板。这些前端代码
一般情况下,原生库的能力是大于js库的。不太可能有一个功能必须使用js库才能使用。比如md5,js有库,原生也有库,调用一个jar也很方便。
一般情况下,原生库的能力是大于js库的。不太可能有一个功能必须使用js库才能使用。比如md5,js有库,原生也有库,调用一个jar也很方便。
实际上,常见的
[
加密、md5
](
[详见](https://ext.dcloud.net.cn/search?q=%E5%8A%A0%E5%AF%86&orderBy=Relevance&cat1=8&cat2=81
)
)、
[
dayjs
](
https://ext.dcloud.net.cn/search?q=dayjs&orderBy=Relevance&cat1=8&cat2=81
)
等库,插件市场已经有uts版本。
常见的
[
加密、md5
](
https://ext.dcloud.net.cn/search?q=%E5%8A%A0%E5%AF%86&orderBy=Relevance&cat1=8&cat2=81
)
、
[
dayjs
](
https://ext.dcloud.net.cn/search?q=dayjs&orderBy=Relevance&cat1=8&cat2=81
)
等库,插件市场已经有uts版本。
**如果你一定要使用某个js库,还有一个办法是在uni-app x里的web-view组件,让其运行js并返回值给uts代码。**
**如果你一定要使用某个js库,还有一个办法是在uni-app x里的web-view组件,让其运行js并返回值给uts代码。**
目前插件市场适配uni-app x的插件已有数百款,包括ui组件库:
目前插件市场适配uni-app x的插件已有数百款,包括ui组件库:
-
[
t-uvue-ui
](
https://ext.dcloud.net.cn/plugin?id=15571
)
:丰富的组件库
-
[
t-uvue-ui
](
https://ext.dcloud.net.cn/plugin?id=15571
)
:丰富的组件库
-
[
u
x
ui
](
https://ext.dcloud.net.cn/plugin?id=15726
)
:graceui作者的免费开源组件库
-
[
u
X
ui
](
https://ext.dcloud.net.cn/plugin?id=15726
)
:graceui作者的免费开源组件库
-
[
ux-front-ui
](
https://ext.dcloud.net.cn/plugin?id=15774
)
:持续更新的组件库
-
[
ux-front-ui
](
https://ext.dcloud.net.cn/plugin?id=15774
)
:持续更新的组件库
-
[
easyX电商组件库
](
https://ext.dcloud.net.cn/plugin?id=15602
)
:电商业务常见的各种组件库
-
[
easyX电商组件库
](
https://ext.dcloud.net.cn/plugin?id=15602
)
:电商业务常见的各种组件库
## 一期范围及路线图
## 一期范围及路线图
除上述文档中声明已经完成的,还有如下需要注意:
除上述文档中声明已经完成的,还有如下需要注意:
...
@@ -311,5 +314,4 @@ uni-app x 毕竟是原生应用,内嵌flutter、rn这些没有任何问题,
...
@@ -311,5 +314,4 @@ uni-app x 毕竟是原生应用,内嵌flutter、rn这些没有任何问题,
欢迎加入 uni-app x 专用群交流
欢迎加入 uni-app x 专用群交流
-
QQ群485089465
-
QQ群485089465
-
钉钉群二维码
-
[
uni-im群
](
https://im.dcloud.net.cn/#/?joinGroup=6582a367058a46652e0deda9
)
![](
static/uaxding.png
)
\ No newline at end of file
docs/sample.md
浏览文件 @
ae906051
...
@@ -12,8 +12,10 @@
...
@@ -12,8 +12,10 @@
关于
[
uni-api
](
https://gitcode.net/dcloud/uni-api
)
和
[
uni-component
](
https://gitcode.net/dcloud/uni-component
)
,再强调说明下:
关于
[
uni-api
](
https://gitcode.net/dcloud/uni-api
)
和
[
uni-component
](
https://gitcode.net/dcloud/uni-component
)
,再强调说明下:
uni-app x的组件和API,大多是uts语言开发的。和开发者做的uts插件是一样的。
\
uni-app x的组件和API,大多是uts语言开发的。和开发者做的uts插件是一样的。
\
它们都符合
[
exi api
](
https://uniapp.dcloud.net.cn/api/extapi.html
)
规范,也就是说,把这些uni_modules复制到工程下,会替换内置API和组件的实现。
\
它们都符合
[
exi api
](
https://uniapp.dcloud.net.cn/api/extapi.html
)
规范,也就是说,把这些uni_modules复制到工程下,会替换内置API和组件的实现。
所以如需修改uni-app x的组件和API,比如修复一些bug或添加一些功能,可以通过这种方式来实现。
\
所以如需修改uni-app x的组件和API,比如修复一些bug或添加一些功能,可以通过这种方式来实现。
如果这些改动有助于其他开发者,欢迎给开源项目回提pr。
如果这些改动有助于其他开发者,欢迎给开源项目回提pr。
除此之外,插件市场还有众多插件,
[
详见
](
https://ext.dcloud.net.cn/?uni-appx=1
)
除此之外,插件市场还有众多插件,
[
详见
](
https://ext.dcloud.net.cn/?uni-appx=1
)
\ No newline at end of file
docs/uts/utsandroid.md
浏览文件 @
ae906051
...
@@ -399,9 +399,6 @@ UTSAndroid.getDispatcher("io").async(function(_){
...
@@ -399,9 +399,6 @@ UTSAndroid.getDispatcher("io").async(function(_){
<!-- UTSJSON.UTSAndroid.getFileProviderUri.compatibility -->
<!-- UTSJSON.UTSAndroid.getFileProviderUri.compatibility -->
<!-- UTSJSON.UTSAndroid.tutorial -->
```
ts
```
ts
// 使用外部应用打开项目内置图片资源
// 使用外部应用打开项目内置图片资源
let
file
=
new
File
(
UTSAndroid
.
getResourcePath
(
"
static/logo.png
"
))
let
file
=
new
File
(
UTSAndroid
.
getResourcePath
(
"
static/logo.png
"
))
...
@@ -414,3 +411,4 @@ context.startActivity(intent);
...
@@ -414,3 +411,4 @@ context.startActivity(intent);
```
```
<!-- UTSJSON.UTSAndroid.tutorial -->
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录