Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
02278ed3
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看板
未验证
提交
02278ed3
编写于
6月 08, 2022
作者:
G
gloria
提交者:
Gitee
6月 08, 2022
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
【OpenHarmony开源贡献者计划2022】fa-serviceability.md描述优化
Signed-off-by:
N
gloria
<
80926032@qq.com
>
上级
f997b3d4
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
8 addition
and
7 deletion
+8
-7
zh-cn/application-dev/ability/fa-serviceability.md
zh-cn/application-dev/ability/fa-serviceability.md
+8
-7
未找到文件。
zh-cn/application-dev/ability/fa-serviceability.md
浏览文件 @
02278ed3
# ServiceAbility开发指导
## 场景介绍
基于Service模板的Ability(以下简称“Service”)主要用于后台运行任务(如执行音乐播放、文件下载等),但不提供用户交互界面。Service可由其他应用或Ability启动
,
即使用户切换到其他应用,Service仍将在后台继续运行。
基于Service模板的Ability(以下简称“Service”)主要用于后台运行任务(如执行音乐播放、文件下载等),但不提供用户交互界面。Service可由其他应用或Ability启动
。
即使用户切换到其他应用,Service仍将在后台继续运行。
## 接口说明
...
...
@@ -12,13 +12,13 @@
|onCommand?(want: Want, startId: number): void|在Service创建完成之后调用,该方法在客户端每次启动该Service时都会调用,开发者可以在该方法中做一些调用统计、初始化类的操作。|
|onConnect?(want: Want): rpc.RemoteObject|在Ability和Service连接时调用。|
|onDisconnect?(want: Want): void|在Ability与绑定的Service断开连接时调用。|
|onStop?(): void|在Service销毁时调用。
Service应通过实现此方法来清理任何
资源,如关闭线程、注册的侦听器等。|
|onStop?(): void|在Service销毁时调用。
开发者应通过实现此方法来清理
资源,如关闭线程、注册的侦听器等。|
## 开发步骤
### 创建注册Service
1.
Service也是一种Ability,Ability为Service提供了以下生命周期方法,开发者可以重写这些
方法,来添加其他Ability请求与Service Ability交互时的处理方法。
1.
重写Service的生命周期
方法,来添加其他Ability请求与Service Ability交互时的处理方法。
创建Service的代码示例如下:
...
...
@@ -45,7 +45,7 @@
2.
注册Service。
Service
也
需要在应用配置文件config.json中进行注册,注册类型type需要设置为service。
Service需要在应用配置文件config.json中进行注册,注册类型type需要设置为service。
```
javascript
{
...
...
@@ -183,7 +183,7 @@ let connId = featureAbility.connectAbility(
);
```
同时,Service侧也需要在onConnect()时返回IRemoteObject,从而定义与Service进行通信的接口。onConnect()需要返回一个IRemoteObject对象
,OpenHarmony提供了IRemoteObject的默认实现,用户
可以通过继承rpc.RemoteObject来创建自定义的实现类。
同时,Service侧也需要在onConnect()时返回IRemoteObject,从而定义与Service进行通信的接口。onConnect()需要返回一个IRemoteObject对象
。OpenHarmony提供了IRemoteObject的默认实现,开发者
可以通过继承rpc.RemoteObject来创建自定义的实现类。
Service侧把自身的实例返回给调用侧的代码示例如下:
...
...
@@ -232,7 +232,8 @@ export default {
```
### 连接远程Service<a name="section126857614019"></a>(当前仅对系统应用开放)
>说明:由于DeviceManager的getTrustedDeviceListSync接口仅对系统应用开放,当前连接远程Service仅支持系统应用
>说明:由于DeviceManager的getTrustedDeviceListSync接口仅对系统应用开放,当前连接远程Service仅支持系统应用。
如果Service需要与Page Ability或其他应用的Service Ability进行跨设备交互,则须创建用于连接的Connection。Service支持其他Ability通过connectAbility()方法与其进行跨设备连接。
...
...
@@ -355,7 +356,7 @@ async function RequestPermission() {
}
```
同时,Service侧也需要在onConnect()时返回IRemoteObject,从而定义与Service进行通信的接口。onConnect()需要返回一个IRemoteObject对象
,OpenHarmony提供了IRemoteObject的默认实现,用户
可以通过继承rpc.RemoteObject来创建自定义的实现类。
同时,Service侧也需要在onConnect()时返回IRemoteObject,从而定义与Service进行通信的接口。onConnect()需要返回一个IRemoteObject对象
。OpenHarmony提供了IRemoteObject的默认实现,开发者
可以通过继承rpc.RemoteObject来创建自定义的实现类。
Service侧把自身的实例返回给调用侧的代码示例如下:
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录