鸿蒙本机通信

demo地址
https://github.com/MartinLi89/WanHarmony

目前只学到一部分,不正确的地方,还望大家指正,我会及时更新,谢谢,欢迎评论留言

本篇帖子中描述的比较宽泛,我自己认知中,通信包含两层含义

  1. 事件触发
  2. 数据共享同步

按照我的定义,此处会有以下分类

  1. 组件间
    • 父子组件
    • 跨代组件
  2. page页面间
  3. 单个UIAbility VS 其自身 page之间
  4. 多个UIAbility 之间
  5. 线程间
  6. 进程间
  7. 应用间
  8. 设备间
关键字 父子组件1 跨代组件 page页面间 UIAbility page UIAbility 之间 线程间 进程间 应用间 设备间 缺点
globalThis 相同名称的对象时,先存放的对象会被后存放的对象覆盖。
EventHub
LocalStorage
AppStorage
Emitter
Worker Worker中不能直接更新Page
IPC(Inter-Process Communication)
RPC(Remote Procedure Call) 需要native, c开发

globalThis
EventHub

  onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void {


    this.context.eventHub.on(CommonValues.LOCAL_PAGE, () => {
      promptAction.showToast({
        message: "eventHub LOCAL_PAGEadsdsd"
      })
      let want: Want = {
        bundleName: 'com.example.wanharmony',
        moduleName: 'entry',
        abilityName: 'EntryPictureAbility'
      }
      this.context.startAbility(want)

    })

  }
 Text(item.title)
              .height(40)
              .padding(4)
              .margin(4)
              .backgroundColor(this.getRandomColor())
              .borderRadius(4)
              .onClick(() => {
                if (item.link === CommonValues.LOCAL_PAGE) {
                  getContext().eventHub.emit(CommonValues.LOCAL_PAGE)
                }
              })
          })

线程间通信

emitter . 线程间通信
Worker

进程间通信

相关推荐

  1. 鸿蒙通信

    2024-05-26 02:28:23       32 阅读
  2. Redis 无法访问

    2024-05-26 02:28:23       31 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-26 02:28:23       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-26 02:28:23       100 阅读
  3. 在Django里面运行非项目文件

    2024-05-26 02:28:23       82 阅读
  4. Python语言-面向对象

    2024-05-26 02:28:23       91 阅读

热门阅读

  1. 设计一个完美的用户角色权限表

    2024-05-26 02:28:23       35 阅读
  2. react native 下载功能实现

    2024-05-26 02:28:23       35 阅读
  3. Gateway基本配置指南:轻松实现网络互联

    2024-05-26 02:28:23       36 阅读
  4. UI面试手册

    2024-05-26 02:28:23       34 阅读
  5. 循序渐进Docker Compose

    2024-05-26 02:28:23       32 阅读
  6. 反编译 Trino Dockerfile

    2024-05-26 02:28:23       35 阅读
  7. Python pdf2imges -- pdf文件转图片

    2024-05-26 02:28:23       34 阅读
  8. ModuleNotFoundError: No module named ‘import_export‘

    2024-05-26 02:28:23       28 阅读
  9. 网页解析之lxml与xpath

    2024-05-26 02:28:23       38 阅读
  10. Django搭建和数据迁移

    2024-05-26 02:28:23       29 阅读