Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
程序yang
unidocs-zh
提交
d74446ca
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看板
提交
d74446ca
编写于
2月 17, 2023
作者:
lizhongyi_
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
docs: update uts-for-ios.md uts-plugin.md
上级
c70cd351
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
80 addition
and
2 deletion
+80
-2
docs/plugin/uts-for-ios.md
docs/plugin/uts-for-ios.md
+66
-0
docs/plugin/uts-plugin.md
docs/plugin/uts-plugin.md
+14
-2
未找到文件。
docs/plugin/uts-for-ios.md
浏览文件 @
d74446ca
...
...
@@ -581,6 +581,7 @@ HBuilderX 目前写iOS uts 插件时部分语法提示会有缺失、参数类
-
缺失可选类型标识;
-
参数标签没有标记无法知道是否需要忽略参数标签;
-
不支持导入包含有子模块的原生模块;
-
暂不支持.a依赖库的代码提示;
这些问题会在后续版本中优化
...
...
@@ -594,3 +595,68 @@ HBuilderX 目前写iOS uts 插件时部分语法提示会有缺失、参数类
### 7.3 类型兼容问题
-
元组类型目前不支持
### 8 .a依赖库相关说明
#### 8.1 .a库存放的目录结构
<pre
v-pre=
""
data-lang=
""
>
<code
class=
"lang-"
style=
"padding:0"
>
└─Libs // .a库存放目录
├─MyStaticLibA //A静态库(该库所有文件放在此文件夹内,OC库)
│ ├─libMyStaticLib.a //.a文件,必须
│ ├─MyStaticLib.h //A.a库对应的头文件,必须
│ ├─MyClassA.h //需要暴露的头文件A,可选
│ └─MyClassB.h //需要暴露的头文件B,可选
└─TestSwiftLibrary //B静态库(该库所有文件放在此文件夹内,Swift库)
├─libTestSwiftLibrary.a //.a文件,必须
└─TestSwiftLibrary.swiftmodule //.swiftmodule文件夹,必须
</code>
</pre>
注意:
-
将.a库的所有文件存放在一个文件夹内,多个.a库就创建多个文件夹;
-
未对某个.a库文件夹下的文件做递归查找,请不要将.a或.h文件嵌套在多层文件夹内,以免发生错误;
#### 8.2 .a库的使用说明
-
OC语言创建的.a库在使用时无需import,可直接使用;
-
Swift语言创建的.a库在使用前需要在uts文件中import;
-
HBuilder X目前暂不支持.a库相关代码的语法提示;
#### 8.3 .a库的使用示例
-
OC语言创建的.a库使用示例:
```
ts
// uts
const
aResult
=
ToolA
.
toolAMethod
();
const
bResult
=
ToolB
.
toolBMethod
();
const
libResult
=
TestLib
.
testLib
();
const
res
=
{
aResult
:
aResult
,
bResult
:
bResult
,
libResult
:
libResult
};
options
.
success
?.(
res
);
```
-
Swift语言创建的.a库使用示例:
```
ts
// uts
import
{
Tool
,
Manager
,
TestLibraryExa
}
from
'
TestLibraryExa
'
;
Manager
.
testManager
();
Tool
.
testTool
()
let
lib
=
TestLibraryExa
();
lib
.
test
()
console
.
log
(
lib
.
version
);
```
### 9 有关Swift语言创建的Framework和.a的Swift版本兼容性问题
-
由于高版本XCode编译的Swift语言Framework动态库、静态库、.a库在低版本XCode上无法编译通过,因此存在Swift版本兼容性问题;
-
目前打包机使用的XCode版本号是13.2.1,对应的Swift版本是5.5.2;
-
请在编译Swift相关Framework和.a库时选择和打包机相同或者更低版本的XCode;
-
选择比打包机更低版本XCode编译Swift库时请在Target->buildSettings设置Buid Libraries for Distribution 为Yes。
\ No newline at end of file
docs/plugin/uts-plugin.md
浏览文件 @
d74446ca
...
...
@@ -129,6 +129,7 @@ package.json 为 uni_modules 插件配置清单文件,负责描述插件的基
│ │ └─index.uts //Android原生插件能力实现
│ ├─app-ios //iOS平台目录
│ │ ├─Frameworks //iOS原生依赖的第三方 framework 依赖库存放目录,可选
│ │ ├─Libs //iOS原生依赖的第三方 .a 依赖库存放目录,可选
│ │ ├─Resources //iOS原生所依赖的资源文件存放目录,可选
│ │ ├─info.plist //iOS原生所需要添加到主 info.plist 文件中的配置文件,可选
│ │ ├─UTS.entitlements //iOS原生所需要添加到主工程 .entitlements 文件中的配置文件,可选
...
...
@@ -288,6 +289,7 @@ app-ios 文件夹下存在iOS平台原生配置,包括以下目录或文件
|目录名/文件名 |用途 |
|:--- |:--- |
|Frameworks |iOS平台插件需要引用的三方 framework 依赖库存放目录 |
|Libs |iOS平台插件需要引用的三方 .a 依赖库存放目录 |
|Resources |iOS平台插件需要引用的资源文件存放目录 |
|Info.plist |iOS平台插件需要添加到原生工程Info.plist中的配置文件 |
|UTS.entitlements |iOS平台插件需要添加到原生工程 entitlements 文件中的配置文件 |
...
...
@@ -295,12 +297,22 @@ app-ios 文件夹下存在iOS平台原生配置,包括以下目录或文件
|index.uts |主入口,index.d.ts声明的能力在iOS平台下的实现 |
##### Frameworks
iOS平台插件依赖的三方
库
存放目录,支持以下类型文件:
iOS平台插件依赖的三方
framework
存放目录,支持以下类型文件:
-
framework
-
xcframework
注意:目前只支持静态库
注意:目前支持静态库和动态库
##### Libs
> HBuilder X 3.7.2+ 版本支持
iOS平台插件依赖的三方.a库存放目录,支持以下类型的.a库:
-
使用OC语言创建的.a库
-
使用Swift语言创建的.a库
备注:有关OC及Swift创建的.a库的区别、.a库的使用方法和注意事项
[
详见
](
https://uniapp.dcloud.net.cn/plugin/uts-for-ios
)
##### Resources
iOS平台原生资源目录,建议只保存uts插件内置的资源文件。云端打包时会将此目录下的所有文件添加到应用 main bundle 中。
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录