Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
330175e4
D
Docs
项目概览
OpenHarmony
/
Docs
大约 1 年 前同步成功
通知
159
Star
292
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
330175e4
编写于
6月 07, 2022
作者:
O
openharmony_ci
提交者:
Gitee
6月 07, 2022
浏览文件
操作
浏览文件
下载
差异文件
!4461 SA/DA/EXT 资料问题
Merge pull request !4461 from 刘宝/master
上级
48e77518
682c7d3d
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
77 addition
and
84 deletion
+77
-84
zh-cn/application-dev/ability/fa-dataability.md
zh-cn/application-dev/ability/fa-dataability.md
+23
-23
zh-cn/application-dev/ability/fa-serviceability.md
zh-cn/application-dev/ability/fa-serviceability.md
+8
-8
zh-cn/application-dev/ability/stage-serviceextension.md
zh-cn/application-dev/ability/stage-serviceextension.md
+46
-53
未找到文件。
zh-cn/application-dev/ability/fa-dataability.md
浏览文件 @
330175e4
...
@@ -6,22 +6,22 @@ Data提供方可以自定义数据的增、删、改、查,以及文件打开
...
@@ -6,22 +6,22 @@ Data提供方可以自定义数据的增、删、改、查,以及文件打开
## 接口说明
## 接口说明
**表1**
Data中相关生命周期功能介绍
**表1**
Data中相关生命周期
API
功能介绍
|接口名|描述|
|接口名|描述|
|:------|:------|
|:------|:------|
|onInitialized|在Ability初始化调用,通过此回调方法执行rdb等初始化操作。|
|onInitialized
?(info: AbilityInfo): void
|在Ability初始化调用,通过此回调方法执行rdb等初始化操作。|
|update|更新数据库中的数据。|
|update
?(uri: string, valueBucket: rdb.ValuesBucket, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback
<number>
): void
|更新数据库中的数据。|
|query|查询数据库中的数据。|
|query
?(uri: string, columns: Array
<string>
, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback
<ResultSet>
): void
|查询数据库中的数据。|
|delete|删除一条或多条数据。|
|delete
?(uri: string, predicates: dataAbility.DataAbilityPredicates, callback: AsyncCallback
<number>
): void
|删除一条或多条数据。|
|normalizeUri|对uri进行规范化。一个规范化的uri可以支持跨设备使用、持久化、备份和还原等,当上下文改变时仍然可以引用到相同的数据项。|
|normalizeUri
?(uri: string, callback: AsyncCallback
<string>
): void
|对uri进行规范化。一个规范化的uri可以支持跨设备使用、持久化、备份和还原等,当上下文改变时仍然可以引用到相同的数据项。|
|batchInsert|向数据库中插入多条数据。|
|batchInsert
?(uri: string, valueBuckets: Array
<rdb.ValuesBucket>
, callback: AsyncCallback
<number>
): void
|向数据库中插入多条数据。|
|denormalizeUri|将一个由normalizeUri生产的规范化uri转换成非规范化的uri。|
|denormalizeUri
?(uri: string, callback: AsyncCallback
<string>
): void
|将一个由normalizeUri生产的规范化uri转换成非规范化的uri。|
|insert|向数据中插入一条数据。|
|insert
?(uri: string, valueBucket: rdb.ValuesBucket, callback: AsyncCallback
<number>
): void
|向数据中插入一条数据。|
|openFile|打开一个文件。|
|openFile
?(uri: string, mode: string, callback: AsyncCallback
<number>
): void
|打开一个文件。|
|getFileTypes|获取文件的MIME类型。|
|getFileTypes
?(uri: string, mimeTypeFilter: string, callback: AsyncCallback
<Array
<
string
>
>): void
|获取文件的MIME类型。|
|getType|获取uri指定数据相匹配的MIME类型。|
|getType
?(uri: string, callback: AsyncCallback
<string>
): void
|获取uri指定数据相匹配的MIME类型。|
|executeBatch|批量操作数据库中的数据。|
|executeBatch
?(ops: Array
<DataAbilityOperation>
, callback: AsyncCallback
<Array
<
DataAbilityResult
>
>): void
|批量操作数据库中的数据。|
|call|自定义方法。|
|call
?(method: string, arg: string, extras: PacMap, callback: AsyncCallback
<PacMap>
): void
|自定义方法。|
## 开发步骤
## 开发步骤
...
@@ -97,15 +97,15 @@ Data提供方可以自定义数据的增、删、改、查,以及文件打开
...
@@ -97,15 +97,15 @@ Data提供方可以自定义数据的增、删、改、查,以及文件打开
```
json
```
json
"abilities"
:[{
"abilities"
:[{
"srcPath"
:
"DataAbility"
,
"srcPath"
:
"DataAbility"
,
"name"
:
".DataAbility"
,
"name"
:
".DataAbility"
,
"icon"
:
"$media:icon"
,
"icon"
:
"$media:icon"
,
"srcLanguage"
:
"ets"
,
"srcLanguage"
:
"ets"
,
"description"
:
"$string:description_dataability"
,
"description"
:
"$string:description_dataability"
,
"type"
:
"data"
,
"type"
:
"data"
,
"visible"
:
true
,
"visible"
:
true
,
"uri"
:
"dataability://ohos.samples.etsdataability.DataAbility"
"uri"
:
"dataability://ohos.samples.etsdataability.DataAbility"
}]
}]
```
```
### 访问Data
### 访问Data
...
...
zh-cn/application-dev/ability/fa-serviceability.md
浏览文件 @
330175e4
...
@@ -5,18 +5,18 @@
...
@@ -5,18 +5,18 @@
## 接口说明
## 接口说明
**表1**
Service中相关生命周期功能介绍
**表1**
Service中相关生命周期
API
功能介绍
|接口名|描述|
|接口名|描述|
|:------|:------|
|:------|:------|
|onStart|该方法在创建Service的时候调用,用于Service的初始化。在Service的整个生命周期只会调用一次,调用时传入的Want应为空。|
|onStart
?(): void
|该方法在创建Service的时候调用,用于Service的初始化。在Service的整个生命周期只会调用一次,调用时传入的Want应为空。|
|onCommand|在Service创建完成之后调用,该方法在客户端每次启动该Service时都会调用,开发者可以在该方法中做一些调用统计、初始化类的操作。|
|onCommand
?(want: Want, startId: number): void
|在Service创建完成之后调用,该方法在客户端每次启动该Service时都会调用,开发者可以在该方法中做一些调用统计、初始化类的操作。|
|onConnect|在Ability和Service连接时调用。|
|onConnect
?(want: Want): rpc.RemoteObject
|在Ability和Service连接时调用。|
|onDisconnect|在Ability与绑定的Service断开连接时调用。|
|onDisconnect
?(want: Want): void
|在Ability与绑定的Service断开连接时调用。|
|onStop|在Service销毁时调用。Service应通过实现此方法来清理任何资源,如关闭线程、注册的侦听器等。|
|onStop
?(): void
|在Service销毁时调用。Service应通过实现此方法来清理任何资源,如关闭线程、注册的侦听器等。|
## 开发步骤
## 开发步骤
### 创建Service
### 创建
注册
Service
1.
Service也是一种Ability,Ability为Service提供了以下生命周期方法,开发者可以重写这些方法,来添加其他Ability请求与Service Ability交互时的处理方法。
1.
Service也是一种Ability,Ability为Service提供了以下生命周期方法,开发者可以重写这些方法,来添加其他Ability请求与Service Ability交互时的处理方法。
...
@@ -113,7 +113,7 @@ let promise = featureAbility.startAbility(
...
@@ -113,7 +113,7 @@ let promise = featureAbility.startAbility(
### 停止Service
### 停止Service
Service一旦创建就会一直保持在后台运行,除非必须回收内存资源,否则系统不会停止或销毁Service。
开发者可以在Service中通过terminateSelf()停止本Service。
Service一旦创建就会一直保持在后台运行,除非必须回收内存资源,否则系统不会停止或销毁Service。
...
...
zh-cn/application-dev/ability/stage-serviceextension.md
浏览文件 @
330175e4
...
@@ -7,75 +7,68 @@ ExtensionAbility,是Stage模型中新增的扩展组件的基类,一般用
...
@@ -7,75 +7,68 @@ ExtensionAbility,是Stage模型中新增的扩展组件的基类,一般用
## 接口说明
## 接口说明
**表1**
ServiceExtensionAbility中相关生命周期功能介绍
**表1**
ServiceExtensionAbility中相关生命周期
API
功能介绍
|接口名|描述|
|接口名|描述|
|:------|:------|
|:------|:------|
|onCreate|首次调用startAbility、connectAbility时触发,开发者可以进行初始化操作。|
|onCreate
(want: Want): void
|首次调用startAbility、connectAbility时触发,开发者可以进行初始化操作。|
|onRequest|每次调用startAbility都会触发,首次调用时startId为1,重复调用startAbility递增。|
|onRequest
(want: Want, startId: number): void
|每次调用startAbility都会触发,首次调用时startId为1,重复调用startAbility递增。|
|onConnect|调用connectAbility触发,重复调用不会再次触发,除非调用disconnectAbility解除绑定后再调用;onConnect返回一个进程通信类RemoteObject。|
|onConnect
(want: Want): rpc.RemoteObject
|调用connectAbility触发,重复调用不会再次触发,除非调用disconnectAbility解除绑定后再调用;onConnect返回一个进程通信类RemoteObject。|
|onDisconnect|调用disconnectAbility触发,Extension如果是用connectAbility拉起的,并且已经没有其他应用绑定这个Extension,则会触发onDestroy生命周期销毁组件。|
|onDisconnect
(want: Want): void
|调用disconnectAbility触发,Extension如果是用connectAbility拉起的,并且已经没有其他应用绑定这个Extension,则会触发onDestroy生命周期销毁组件。|
|onDestroy|调用停止当前ability接口terminateSelf会触发。|
|onDestroy
(): void
|调用停止当前ability接口terminateSelf会触发。|
## 约束与限制
## 约束与限制
-
OpenHarmony当前不支持三方应用创建ServiceExtensionAbility。
OpenHarmony当前不支持三方应用创建ServiceExtensionAbility。
## 开发步骤
## 开发步骤
1.
创建ServiceExtensionAbility
1.
需要在应用配置文件module.json中进行注册,注册类型type需要设置为service。module.json配置样例如下所示:
开发者在创建TS文件中自定义类继承ServiceExtensionAbility,重写基类回调函数,示例如下:
```
js
import
rpc
from
'
@ohos.rpc
'
class
StubTest
extends
rpc
.
RemoteObject
{
constructor
(
des
)
{
super
(
des
);
}
onRemoteRequest
(
code
,
data
,
reply
,
option
)
{
}
}
class
ServiceExt
extends
ServiceExtensionAbility
{
onCreate
(
want
)
{
console
.
log
(
'
onCreate, want:
'
+
want
.
abilityName
);
}
onRequest
(
want
,
startId
)
{
console
.
log
(
'
onRequest, want:
'
+
want
.
abilityName
);
}
onConnect
(
want
)
{
console
.
log
(
'
onConnect , want:
'
+
want
.
abilityName
);
return
new
StubTest
(
"
test
"
);
}
onDisconnect
(
want
)
{
console
.
log
(
'
onDisconnect, want:
'
+
want
.
abilityName
);
}
onDestroy
()
{
console
.
log
(
'
onDestroy
'
);
}
}
```
```
json
"extensionAbilities"
:[{
"name"
:
"ServiceExtAbility"
,
"icon"
:
"$media:icon"
,
"description"
:
"service"
,
"type"
:
"service"
,
"visible"
:
true
,
"srcEntrance"
:
"./ets/ServiceExtAbility/ServiceExtAbility.ts"
}]
```
2.
注册ServiceExtensionAbility
需要在应用配置文件module.json中进行注册,注册类型type需要设置为service。
2.
开发者在定义Service的目录下创建TS文件,自定义类继承ServiceExtensionAbility,重写基类回调函数,示例如下:
**module.json配置样例**
```js
import rpc from '@ohos.rpc'
```
json
class StubTest extends rpc.RemoteObject {
"extensionAbilities"
:[{
constructor(des) {
"name"
:
"ServiceExtAbility"
,
super(des);
"icon"
:
"$media:icon"
,
}
"description"
:
"service"
,
onRemoteRequest(code, data, reply, option) {
"type"
:
"service"
,
}
"visible"
:
true
,
}
"srcEntrance"
:
"./ets/ServiceExtAbility/ServiceExtAbility.ts"
}]
```
class ServiceExt extends ServiceExtensionAbility {
console.log('onCreate, want:' + want.abilityName);
}
onRequest(want, startId) {
console.log('onRequest, want:' + want.abilityName);
}
onConnect(want) {
console.log('onConnect , want:' + want.abilityName);
return new StubTest("test");
}
onDisconnect(want) {
console.log('onDisconnect, want:' + want.abilityName);
}
onDestroy() {
console.log('onDestroy');
}
}
```
## 相关实例
## 相关实例
针对ServiceExtensionAbility开发,有以下相关实例可供参考:
针对ServiceExtensionAbility开发,有以下相关实例可供参考:
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录