回复
鸿蒙开源组件——轻量级的跨进程通信方案
jacksky
发布于 2021-11-15 18:28
浏览
0收藏
okbinder
项目介绍
- 项目名称: okbinder
- 所属系列: openharmony的第三方组件适配移植
- 功能:是一个轻量级的跨进程通信方案,可以用来替代 AIDL。
- 项目移植状态: 主功能完成
- 调用差异:无
- 开发版本:sdk6,DevEco Studio 2.2 Beta1
- 基线版本:Release 2.0
效果演示
安装教程
1.在项目根目录下的build.gradle文件中
allprojects {
repositories {
maven {
url 'https://s01.oss.sonatype.org/content/repositories/releases/'
}
}
}
2.在entry模块的build.gradle文件中,
dependencies {
implementation('com.gitee.chinasoft_ohos:okbinder2:1.0.0')
......
}
在sdk6,DevEco Studio 2.2 Beta1下项目可直接运行 如无法运行,删除项目.gradle,.idea,build,gradle,build.gradle文件, 并依据自己的版本创建新项目,将新项目的对应文件复制到根目录下
使用说明
1、使用该库很简单,只需要查看sample即可
2、config中新增服务配置,并Intent启动服务
{
"name": "cn.thens.okbinder2.sample.RemoteService",
"icon": "$media:icon",
"description": "$string:HelloWorld",
"type": "service",
"process": ":f1"
}
3、客户端绑定
public class LocalService extends Ability {
@Override
protected IRemoteObject onConnect(Intent intent) {
return OkBinder.create(new IRemoteServiceImpl("LocalService"));
}
}
4、客户端跨进程请求
MainAbilitySlice.this.connectAbility(intents, new IAbilityConnection() {
@Override
public void onAbilityConnectDone(ElementName elementName, IRemoteObject remote, int i) {
IRemoteService proxy = OkBinder.proxy(IRemoteService.class, remote);
proxy.testError(false, replace);
@Override
public void onAbilityDisconnectDone(ElementName elementName, int i) {
}
});
测试信息
CodeCheck代码测试无异常
CloudTest代码测试无异常
病毒安全检测通过
当前版本demo功能与原组件基本无差异
版本迭代
- 1.0.0
版权和许可信息
- MIT
okbinder-master.zip 144.69K 17次下载
已于2021-11-15 18:28:47修改
赞
收藏
回复
相关推荐