Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
程序yang
unidocs-zh
提交
194a7ff2
U
unidocs-zh
项目概览
程序yang
/
unidocs-zh
与 Fork 源项目一致
Fork自
DCloud / unidocs-zh
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
unidocs-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
194a7ff2
编写于
8月 26, 2022
作者:
杜庆泉
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
uts-plugin doc modify platform desc
上级
1496907a
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
57 addition
and
25 deletion
+57
-25
docs/plugin/uts-plugin.md
docs/plugin/uts-plugin.md
+57
-25
未找到文件。
docs/plugin/uts-plugin.md
浏览文件 @
194a7ff2
...
...
@@ -8,7 +8,7 @@ UTS原生插件 是用 [UTS语言](缺链接) 开发的App原生插件。
UTS语言编译到Android平台,会转为kotlin;编译到iOS平台,会转为swift。
所以UTS开发的插件,编译后也就是kotlin和swift开发的插件。
**所以UTS开发的插件,编译后也就是kotlin和swift开发的插件。**
开发UTS插件不需要熟悉kotlin和swift的语言语法,因为使用的是基于ts的uts语法。但需要熟悉Android和iOS的系统API,否则无法调用原生能力。
...
...
@@ -29,11 +29,11 @@ UTS语言编译到Android平台,会转为kotlin;编译到iOS平台,会转
|打包方式|外挂aar 等产出物|编译时生成原生代码|
|调用方式|uni.requireNativePlugin()|普通的js直接import|
uts的优势:
uts
插件
的优势:
1.
统一了编程语言(
uts
),一种语言开发所有平台,真正大前端。
1.
统一了编程语言(
UTS
),一种语言开发所有平台,真正大前端。
2.
统一了开发工具(HBuilderX),免除搭建复杂的原生开发环境。
3.
插件封装中要理解的概念更少
,传统原生语言插件需要在js和原生层处理通信,使用各种特殊转换,使用特殊语法导入,注意事项很多。uts统一为纯前端概念,简单清晰。
3.
插件封装中要理解的概念更少
。 传统原生语言插件需要在js和原生层处理通信,使用各种特殊转换,使用特殊语法导入,注意事项很多。
**uts统一为纯前端概念,简单清晰。**
4.
uts下前端和原生可以统一在HBuilderX中联调。而传统原生语言插件需要原生开发后打包,然后在js中调用,有问题再改原生,比较低效。
...
...
@@ -65,6 +65,7 @@ UTS插件目录结构
### 2.3 清单文件package.json
package.json为插件的清单文件,这里集成了整个UTS插件的配置信息,下面是一个完整的示例
```
json
{
"id"
:
"uts-helloworld"
,
...
...
@@ -72,31 +73,62 @@ package.json为插件的清单文件,这里集成了整个UTS插件的配置
"version"
:
"0.1"
,
"description"
:
"UTS插件示例"
,
"uni_modules"
:
{
"type"
:
"uts"
,
"uts"
:
{
"android"
:
{
"libs"
:
[
"xxx.aar"
],
"dependencies"
:
[{
"id"
:
"com.xxx.richtext:richtext"
,
"source"
:
"implementation 'com.xxx.richtext:richtext:3.0.7'"
}],
"minSdkVersion"
:
21
},
"ios"
:
{
"libs"
:
[
"xxx.a"
]
},
"dependencies"
:
[
"xxx.uts"
]
}
}
}
```
### 2.4 插件的平台实现
一个UTS插件,代表的应该是
**Uni标准的下一种原生扩展能力**
插件目录下 index.d.ts文件是对当前插件能力的声明,index.uts文件是对当前插件能力的实现
插件目录下,app-android、app-ios 等目录,用以存放不同的平台的能力实现
```
插件标识
- utssdk
+ app-android
* index.uts
* config.json
+ app-ios
* index.uts
* config.json
+ web
* index.uts
+ mp-weixin
* index.uts
+ mp-xxx
- common
- static
- package.json
- index.d.ts
- index.uts
```
下面以app-android 平台为例,介绍具体平台实现的构成
app-android 文件夹下 index.uts
config.json 存放是该插件能力android平台下实现的配置。
下面是一个实例
```
json
{
"libs"
:
[
"xxx.aar"
],
"dependencies"
:
[{
"id"
:
"com.xxx.richtext:richtext"
,
"source"
:
"implementation 'com.xxx.richtext:richtext:3.0.7'"
}],
"minSdkVersion"
:
21
}
,
```
## 3 开发UTS原生插件
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录