Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
unidocs-zh
提交
dc77241a
unidocs-zh
项目概览
DCloud
/
unidocs-zh
通知
3200
Star
106
Fork
813
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
94
列表
看板
标记
里程碑
合并请求
70
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
unidocs-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
94
Issue
94
列表
看板
标记
里程碑
合并请求
70
合并请求
70
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
dc77241a
编写于
10月 26, 2022
作者:
杜庆泉
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Update uts-for-android.md
上级
7aa51d3f
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
30 addition
and
4 deletion
+30
-4
docs/plugin/uts-for-android.md
docs/plugin/uts-for-android.md
+30
-4
未找到文件。
docs/plugin/uts-for-android.md
浏览文件 @
dc77241a
...
@@ -99,26 +99,50 @@ uts语法详细介绍:[uts语法介绍](https://uniapp.dcloud.net.cn/tutorial/
...
@@ -99,26 +99,50 @@ uts语法详细介绍:[uts语法介绍](https://uniapp.dcloud.net.cn/tutorial/
但是当开发者重写
`Android`
平台
`Service`
组件
`onStartCommand`
方法时,必须明确指定接收参数为 Int,以满足
`Android`
平台API要求
但是当开发者重写
`Android`
平台
`Service`
组件
`onStartCommand`
方法时,必须明确指定接收参数为 Int,以满足
`Android`
平台API要求
UTS 实现代码:
在标准的UTS环境中,其实只有
`Number`
类型而没有
`Int`
,理想的情况应该是这样写:
```
ts
override
onStartCommand
(
intent
:
Intent
,
flags
:
Number
,
startId
:
Number
):
Number
{
return
super
.
onStartCommand
(
intent
,
flags
,
startId
);
}
```
但是因为
`onStartCommand`
是
`android`
提供的api 并且明确指定数据类型
`flags`
和
`startId`
需要是Int类型,
因此我们需要违背
`UTS`
数据类型,以满足
`android`
平台数据类型的需要:
```
ts
```
ts
override
onStartCommand
(
intent
:
Intent
,
flags
:
Int
,
startId
:
Int
):
Int
{
override
onStartCommand
(
intent
:
Intent
,
flags
:
Int
,
startId
:
Int
):
Int
{
return
super
.
onStartCommand
(
intent
,
flags
,
startId
);
}
}
```
```
对应的Kotlin 代码实现:
最后转换成的下面的
`Kotlin`
代码:
```
kotlin
```
kotlin
override
fun
onStartCommand
(
intent
:
Intent
,
flags
:
Int
,
startId
:
Int
):
Int
{
override
fun
onStartCommand
(
intent
:
Intent
,
flags
:
Int
,
startId
:
Int
):
Int
{
return
super
.
onStartCommand
(
intent
,
flags
,
startId
);
}
}
```
```
举例二:
`MutableList`
举例二:
`MutableList`
`MutableList`
是
`android`
平台 特有的数据类型,一般场景下,可以使用UTS中内置类型
`Array`
替代
`MutableList`
是
`android`
平台 特有的数据类型,一般场景下,可以使用UTS中内置类型
`Array`
替代
但是在
`android`
平台 响应权限申请结果时,必须要以此为类型
但是在
`android`
平台 响应权限申请结果时,必须要以此为类型
UTS 实现代码:
在标准的UTS环境中,是没有
`MutableList`
类型的,与之相近的数据类型是
`Array`
,所以理想的情况应该是这样写:
```
ts
onAppActivityRequestPermissionsResult
((
requestCode
:
number
,
permissions
:
Array
<
string
>
,
grantResults
:
Array
<
number
>
)
=>
{
// 权限申请结果
});
```
但是因为
`onAppActivityRequestPermissionsResult`
函数是
`android`
平台内置的函数,且明确要求了
`permissions`
和
`grantResults`
字段必须是
`MutableList`
类型。因此我们需要这样写:
```
ts
```
ts
onAppActivityRequestPermissionsResult
((
requestCode
:
number
,
permissions
:
MutableList
<
string
>
,
grantResults
:
MutableList
<
number
>
)
=>
{
onAppActivityRequestPermissionsResult
((
requestCode
:
number
,
permissions
:
MutableList
<
string
>
,
grantResults
:
MutableList
<
number
>
)
=>
{
...
@@ -126,13 +150,15 @@ onAppActivityRequestPermissionsResult((requestCode: number,permissions: MutableL
...
@@ -126,13 +150,15 @@ onAppActivityRequestPermissionsResult((requestCode: number,permissions: MutableL
});
});
```
```
对应的Kotlin 代码实现:
编译后的kotlin代码是这样的:
```
kotlin
```
kotlin
onAppActivityRequestPermissionsResult
(
fun
(
requestCode
:
Number
,
permissions
:
MutableList
<
String
>,
grantResults
:
MutableList
<
Number
>){
onAppActivityRequestPermissionsResult
(
fun
(
requestCode
:
Number
,
permissions
:
MutableList
<
String
>,
grantResults
:
MutableList
<
Number
>){
});
});
```
```
## 3 Android原生环境配置 (目前版本暂不支持)
## 3 Android原生环境配置 (目前版本暂不支持)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录