未验证 提交 1c09191b 编写于 作者: O openharmony_ci 提交者: Gitee

!3345 add sample+codelab

Merge pull request !3345 from zengyawen/OpenHarmony-3.1-Release
# IPC与RPC通信开发指导
- [场景介绍](#场景介绍)
- [接口说明](#接口说明)
- [开发步骤](#开发步骤)
## 场景介绍
......
# IPC与RPC通信概述
- [基本概念](#基本概念)
- [约束与限制](#约束与限制)
- [相关模块](#相关模块)
## 基本概念
IPC(Inter-Process Communication)与RPC(Remote Procedure Call)机制用于实现跨进程通信,不同的是前者使用Binder驱动,用于设备内的跨进程通信,而后者使用软总线驱动,用于跨设备跨进程通信。IPC和RPC通常采用客户端-服务器(Client-Server)模型,服务请求方(Client)可获取提供服务提供方(Server)的代理 (Proxy),并通过此代理读写数据来实现进程间的数据通信。通常,Server会先注册系统能力(System Ability)到系统能力管理者(System Ability Manager,缩写SAMgr)中,SAMgr负责管理这些SA并向Client提供相关的接口。Client要和某个具体的SA通信,必须先从SAMgr中获取该SA的代理,然后使用代理和SA通信。下文使用Proxy表示服务请求方,Stub表示服务提供方。
......
......@@ -123,3 +123,9 @@
console.error(error);
}
```
## 相关实例
针对传感器开发,有以下相关实例可供参考:
- [`Sensor`:传感器(eTS)(API8)](https://gitee.com/openharmony/app_samples/tree/master/device/Sensor)
\ No newline at end of file
......@@ -82,3 +82,9 @@
};
})
```
## 相关实例
针对振动开发,有以下相关实例可供参考:
- [`Vibrator`:振动(eTS)(API8)](https://gitee.com/openharmony/app_samples/tree/master/device/Vibrator)
\ No newline at end of file
......@@ -71,4 +71,10 @@
}
```
2. 运行项目,点击应用界面上的运行按钮。
\ No newline at end of file
2. 运行项目,点击应用界面上的运行按钮。
## 相关实例
针对应用事件开发,有以下相关实例可供参考:
- [`JsDotTest`:测试打点(JS)(API7)](https://gitee.com/openharmony/app_samples/tree/master/DFX/JsDotTest)
\ No newline at end of file
......@@ -251,4 +251,14 @@ await fileIO.open(path).then(fdNumber) => {
audioPlayer.src = fdPath; //设置src属性,并触发'dataLoad'事件回调
audioPlayer.loop = true; //设置循环播放属性
```
\ No newline at end of file
```
## 相关实例
针对音频播放开发,有以下相关实例可供参考:
- [`JsDistributedMusicPlayer`:分布式音乐播放(JS)(API7)](https://gitee.com/openharmony/app_samples/tree/master/ability/JsDistributedMusicPlayer)
- [`JsAudioPlayer`:音频播放和管理(JS)(API7)](https://gitee.com/openharmony/app_samples/tree/master/media/JsAudioPlayer)
- [音频播放器](https://gitee.com/openharmony/codelabs/tree/master/Media/Audio_OH_ETS)
\ No newline at end of file
......@@ -193,3 +193,10 @@ audioRecorder.release(); // audioRecorder资源被销
audioRecorder = undefined;
```
## 相关实例
针对音频录制开发,有以下相关实例可供参考:
- [`Recorder`:录音机(eTS)(API8)](https://gitee.com/openharmony/app_samples/tree/master/media/Recorder)
- [音频播放器](https://gitee.com/openharmony/codelabs/tree/master/Media/Audio_OH_ETS)
\ No newline at end of file
......@@ -170,11 +170,9 @@ if (this.subscriber != null) {
}
```
## 开发实例
## 相关实例
针对公共事件开发,有以下示例工程可供参考:
针对公共事件开发,有以下相关实例可供参考:
- [CommonEvent](https://gitee.com/openharmony/app_samples/tree/master/ability/CommonEvent)
本示例展示了在eTS中如何使用CommonEvent的接口完成创建订阅者、订阅公共事件、发布公共事件、取消订阅的功能。
- [`CommonEvent`:订阅公共事件(eTS)(API7)](https://gitee.com/openharmony/app_samples/tree/master/ability/CommonEvent)
......@@ -245,40 +245,8 @@ function cancelCallback(err) {
Notification.cancel(1, "label", cancelCallback)
```
## 相关实例
针对通知开发,有以下相关可供参考:
## 开发实例
针对通知开发,有以下示例工程可供参考:
- [Notification](https://gitee.com/openharmony/app_samples/tree/master/Notification/Notification)
本示例展示了在eTS中如何使用Notification的接口完成通知订阅、取消订阅、发布通知、取消通知功能。
- [`Notification`:通知(eTS)(API7)](https://gitee.com/openharmony/app_samples/tree/master/common/Notification)
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册