Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
unidocs-uni-app-x-zh
提交
4a96116b
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看板
提交
4a96116b
编写于
12月 29, 2023
作者:
W
wanganxp
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
x
上级
24574ba2
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
74 addition
and
5 deletion
+74
-5
docs/api/README.md
docs/api/README.md
+29
-1
docs/api/_sidebar.md
docs/api/_sidebar.md
+0
-1
docs/api/ext.md
docs/api/ext.md
+39
-1
docs/plugin/uts-plugin.md
docs/plugin/uts-plugin.md
+2
-1
docs/uts/_sidebar.md
docs/uts/_sidebar.md
+2
-1
docs/uts/utsandroid.md
docs/uts/utsandroid.md
+1
-0
docs/uts/utsios.md
docs/uts/utsios.md
+1
-0
未找到文件。
docs/api/README.md
浏览文件 @
4a96116b
...
...
@@ -41,4 +41,32 @@ uni-app x项目的uts代码中可以使用很多API。包括:
虽然上述页面可以直接调用原生能力,但一般原生能力建议封装为
[
uni_modules
](
https://uniapp.dcloud.net.cn/plugin/uni_modules.html
)
形式的
[
uts插件
](
https://uniapp.dcloud.net.cn/plugin/uts-plugin.html
)
。这样方便共享、方便跨平台。
uni-app x 中不再支持plus和weex的API。过于plus api中一些常用的api,一部分在uni-app x中进行了替换增补、一部分提供了uts操作原生的示例代码。
[
详见
](
ext.md
)
\ No newline at end of file
uni-app x 中不再支持plus和weex的API。过于plus api中一些常用的api,一部分在uni-app x中进行了替换增补、一部分提供了uts操作原生的示例代码。
[
详见
](
ext.md
)
网上可以找到很多kotlin调用系统api的代码,但如何使用uts来调用这些系统api?
以上面的获取手机型号的代码为例:
1.
打开一个靠谱的ai,询问:"kotlin中获取手机型号的代码,需包含导入的类",得到如下代码:
```
kotlin
import
android.os.Build
fun
getDeviceModel
():
String
{
return
Build
.
MODEL
}
```
2.
再问ai:"把上述代码转为ts代码"
```
ts
function
getDeviceModel
():
string
{
return
Build
.
MODEL
;
}
```
这里注意几个差别:
-
kotlin中import包,是
`import android.os.Build`
,而uts是
` import Build from 'android.os.Build'`
。import后面需要跟名字,from后面需要引号括起来。
-
import包,需要在uvue页面的
`export default`
外。复杂的原生插件应该直接创建uts插件,放在单独的uni_modules中。
-
kotlin定义一个函数是
`fun`
,而uts是
`function`
-
kotlin中定义一个常量是val,而uts是const;kotlin的变量定义是var,而uts推荐使用let。
更复杂的例子可以
[
参考
](
ext.md#kt2uts
)
docs/api/_sidebar.md
浏览文件 @
4a96116b
...
...
@@ -21,7 +21,6 @@
*
界面
*
[
交互反馈
](
prompt.md
)
*
[
动态加载字体
](
load-font-face.md
)
*
[
截屏事件
](
capturescreen.md
)
*
网络
*
[
发起请求request
](
request.md
)
*
[
上传文件
](
upload-file.md
)
...
...
docs/api/ext.md
浏览文件 @
4a96116b
# 其它api
## uni api替代@uni
插件市场和hello示例中还有一批可替代uni内置api的插件或示例代码,比如:
-
[
剪切板
](
https://ext.dcloud.net.cn/search?q=%E5%89%AA%E5%88%87%E6%9D%BF&orderBy=Relevance&cat1=8&cat2=81
)
:
`uni.setClipboardData`
、
`uni.getClipboardData`
-
[
拨打电话
](
https://ext.dcloud.net.cn/plugin?id=15235
)
:
`uni.makePhoneCall`
...
...
@@ -42,6 +43,7 @@
</
script
>
```
## plus api替代@plus
uni-app x 中不再支持plus和weex的API。过于plus api中一些常用的api,在uni-app x中进行了替换增补。
-
plus.runtime.quit =>
[
uni.exit
](
./exit.md
)
-
plus.runtime.install =>
[
uni.installApk
](
./install-apk.md
)
...
...
@@ -75,4 +77,40 @@ uni-app x 中不再支持plus和weex的API。过于plus api中一些常用的api
}
</
script
>
```
\ No newline at end of file
## kotlin代码转uts简易指南@kt2uts
以上面的打开schema代码为例。
1.
打开一个靠谱的ai,询问:"kotlin中打开系统浏览器的代码",得到如下代码:
```
kotlin
import
android.content.Intent
import
android.net.Uri
fun
openSystemBrowser
(
url
:
String
)
{
val
intent
=
Intent
(
Intent
.
ACTION_VIEW
,
Uri
.
parse
(
url
))
startActivity
(
intent
)
}
```
2.
再问ai:"把上述代码转为ts代码""
```
ts
import
Intent
from
'
android.content.Intent
'
;
import
Uri
from
'
android.net.Uri
'
;
function
openSystemBrowser
(
url
:
string
):
void
{
const
intent
=
new
Intent
(
Intent
.
ACTION_VIEW
,
Uri
.
parse
(
url
));
startActivity
(
intent
);
}
```
这里注意几个差别:
-
kotlin中import包,是
`import android.content.Intent`
,而uts是
`import Intent from 'android.content.Intent'`
。import后面需要跟名字,from后面需要引号括起来。
-
kotlin定义一个函数是
`fun`
,而uts是
`function`
-
kotlin中定义一个常量是val,而uts是const;kotlin的变量定义是var,而uts推荐使用let。
-
uts中实例化对象需要使用new关键字。
-
kotlin中是自己创建activity、自己管理。而uts中activity已经被uni-app x框架创建好了,要获取当前activity,有专门的api,
`const context = UTSAndroid.getUniActivity()!`
有时你得到的kotlin代码可能是简写,或者ai转ts时搞错了,需要自己推理一下缺什么,简单补补改改。
官方的uni api,都是uts代码调用系统api,这里面很多例子可以参考:
[
https://gitcode.net/dcloud/uni-api
](
https://gitcode.net/dcloud/uni-api
)
\ No newline at end of file
docs/plugin/uts-plugin.md
浏览文件 @
4a96116b
...
...
@@ -2,7 +2,8 @@
## 介绍
> HBuilderX 3.6+ 支持uts插件
> HBuilderX 3.6+ 支持uni-app中使用uts插件
> HBuilderX 3.9+ 支持uni-app x中使用uts插件
UTS插件开发官方QQ交流群:527828934
[
点此加入
](
https://qm.qq.com/cgi-bin/qm/qr?k=3Z-cQCXGiTyThkrqufUNNw7TaJd2xEPb&jump_from=webapi&authKey=4UQdplol3kPLwlDfuSdYleE8JUHnJChC2+8HcuBavZq2q51iAkLdzT4Bupt4ZJZu
)
...
...
docs/uts/_sidebar.md
浏览文件 @
4a96116b
...
...
@@ -26,10 +26,11 @@
*
[
Error
](
buildin-object-api/error.md
)
*
[
Console
](
buildin-object-api/console.md
)
*
[
全局
](
buildin-object-api/global.md
)
*
平台对象和 API
*
平台
专用
对象和 API
*
[
UTSAndroid
](
utsandroid.md
)
*
[
UTSAndroidHookProxy
](
utsandroidhookproxy.md
)
*
[
UTSiOS
](
utsios.md
)
*
[
UTSiOSHookProxy
](
utsioshookproxy.md
)
*
[
关键词
](
keywords.md
)
*
[
UTS App插件开发
](
../plugin/uts-plugin.md
)
<!-- * [学习资料](learning.md) -->
docs/uts/utsandroid.md
浏览文件 @
4a96116b
# UTSAndroid
app-android平台专有内置对象。在uni-app和uni-app x的uts环境中均可使用。
## 静态方法
...
...
docs/uts/utsios.md
浏览文件 @
4a96116b
# UTSiOS
app-iOS平台专有内置对象。在uni-app和uni-app x的uts环境中均可使用。
## 静态方法
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录