鸿蒙开发接口Ability框架:【(窗口扩展能力)】

 窗口扩展能力

WindowExtensionAbility基于ExtensionAbility,WindowExtensionAbility中展示的内容作为一个控件(AbilityComponent)内容展示在其他应用窗口中,实现在一个窗口中展示多个应用程序内容的功能。

说明:

本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

本模块接口为系统接口。

本模块接口仅可在Stage模型下使用。

导入模块

import WindowExtensionAbility from '@ohos.application.WindowExtensionAbility';

开发前请熟悉鸿蒙开发指导文档:gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md点击或者复制转到。

属性

系统能力:  SystemCapability.Ability.AbilityRuntime.Core

名称参数类型可读可写说明
contextExtensionContext上下文。

WindowExtensionAbility.onConnect

onConnect(want: Want): rpc.RemoteObject

当窗口扩展组件第一次连接ability时回调。

系统能力:  SystemCapability.Ability.AbilityRuntime.Core

参数名类型必填说明
wantWant当前ability的Want类型信息,包括ability名称、bundle名称等。

返回值:

类型说明
rpc.RemoteObject窗口功能的代理对象。

示例:

import rpc from '@ohos.rpc';

class StubTest extends rpc.RemoteObject {
    constructor(des) {
        super(des);
    }
    onRemoteRequest(code, data, reply, option) {
        return true;
    }
    queryLocalInterface(descriptor) {
        return null;
    }
    getInterfaceDescriptor() {
        return "";
    }
    sendRequest(code, data, reply, options) {
        return null;
    }
    getCallingPid() {
        return 1;
    }
    getCallingUid() {
        return 1;
    }
    attachLocalInterface(localInterface, descriptor){}
}

export default class MyWindowExtensionAbility extends WindowExtensionAbility {

  onConnect(want): rpc.RemoteObject {
    console.info('WindowExtAbility onConnect ' + want.abilityName);
    return new StubTest("test");
  }

}

WindowExtensionAbility.onDisconnect

onDisconnect(want: Want): void

当所有连接到窗口扩展组件的ability断开连接时回调。

系统能力:  SystemCapability.Ability.AbilityRuntime.Core

参数名类型必填说明
wantWant当前Ability的Want类型信息,包括ability名称、bundle名称等。

示例:

export default class MyWindowExtensionAbility extends WindowExtensionAbility {

  onDisconnect(want) {
    console.info('WindowExtAbility onDisconnect ' + want.abilityName);
  }

}

WindowExtensionAbility.onWindowReady

onWindowReady(window: Window): void

当窗口被创建时回调。

系统能力:  SystemCapability.Ability.AbilityRuntime.Core

参数名类型必填说明
windowWindow当前窗口实例。HarmonyOS与OpenHarmony鸿蒙文档籽料:mau123789是v直接拿

搜狗高速浏览器截图20240326151547.png


示例:

export default class MyWindowExtensionAbility extends WindowExtensionAbility {

  onWindowReady(window) {
    window.loadContent('WindowExtAbility/pages/index1').then(() => {
      window.getProperties().then((pro) => {
        console.log("WindowExtension " + JSON.stringify(pro));
      })
      window.show();
    })
  }

}

鸿蒙语言有TS、ArkTS等语法,那么除了这些基础知识之外,其核心技术点有那些呢?下面就用一张整理出的鸿蒙学习路线图表示:

从上面的OpenHarmony技术梳理来看,鸿蒙的学习内容也是很多的。现在全网的鸿蒙学习文档也是非常的少,下面推荐一些:完整内容可在头像页保存,或这qr23.cn/AKFP8k甲助力

内容包含:《鸿蒙NEXT星河版开发学习文档》

  • ArkTS
  • 声明式ArkUI
  • 多媒体
  • 通信问题
  • 系统移植
  • 系统裁剪
  • FW层的原理
  • 各种开发调试工具
  • 智能设备开发
  • 分布式开发等等。

这些就是对往后开发者的分享,希望大家多多点赞关注喔!

  • 13
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值