• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# HalfScreenLaunchComponent
2
3<!--Kit: ArkUI-->
4<!--Subsystem: ArkUI-->
5<!--Owner: @qq_36417014-->
6<!--Designer: @autojuan-->
7<!--Tester: @tinygreyy-->
8<!--Adviser: @zengyawen-->
9
10半屏嵌入式启动原子化服务组件,当被拉起方未授权嵌入式运行原子化服务时,宿主将使用跳出式拉起原子化服务。
11
12> **说明:**
13>
14> 该组件从API Version 18开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
15>
16> 如果需要在该组件中实现一个可嵌入式运行的原子化服务时,原子化服务必须继承自[EmbeddableUIAbility](../../apis-ability-kit/js-apis-app-ability-embeddableUIAbility.md)。若不继承自EmbeddableUIAbility,系统无法保证原子化服务功能正常。
17
18## 导入模块
19
20```
21import { HalfScreenLaunchComponent } from '@kit.ArkUI';
22```
23
24## 子组件
25
2627
28## 属性
29不支持[通用属性](ts-component-general-attributes.md)
30
31## HalfScreenLaunchComponent
32
33HalfScreenLaunchComponent({
34&emsp;content: Callback\<void>,
35&emsp;appId: string,
36&emsp;options?: AtomicServiceOptions,
37&emsp;onError?: ErrorCallback,
38&emsp;onTerminated?: Callback&lt;TerminationInfo&gt;
39  })
40
41**装饰器类型:**\@Component
42
43**系统能力:** SystemCapability.ArkUI.ArkUI.Full
44
45**参数:**
46
47| 名称 | 类型 | 必填 | 装饰器类型 | 说明 |
48| -------- | -------- | -------- | -------- | -------- |
49| content | Callback\<void> | 是 | \@BuilderParam | 组件显示内容。<br/>**原子化服务API:** 从API version 18开始,该接口支持在原子化服务中使用。 |
50| appId | string | 是 | - | 原子化服务appId。<br/>**原子化服务API:** 从API version 18开始,该接口支持在原子化服务中使用。 |
51| options | [AtomicServiceOptions](../../apis-ability-kit/js-apis-app-ability-atomicServiceOptions.md) | 否 | - | 拉起原子化服务参数,默认为空。<br/>**原子化服务API:** 从API version 18开始,该接口支持在原子化服务中使用。|
52| onError |[ErrorCallback](../../apis-basic-services-kit/js-apis-base.md#errorcallback) | 否 | - | 被拉起的原子化服务扩展在运行过程中发生异常时触发本回调。<br/>**原子化服务API:** 从API version 18开始,该接口支持在原子化服务中使用。|
53| onTerminated | [Callback](../../apis-basic-services-kit/js-apis-base.md#callback)\<TerminationInfo> | 否 | - |  回调函数,入参用于接收原子化服务的返回结果,类型为TerminationInfo。<br/>**原子化服务API:** 从API version 18开始,该接口支持在原子化服务中使用。|
54| onReceive<sup>20+<sup> | [Callback](../../apis-basic-services-kit/js-apis-base.md#callback)\<Record<string, Object>> | 否 | - | 被拉起的嵌入式运行原子化服务通过[Window](../../../windowmanager/application-window-stage.md)调用API时,触发本回调。<br/>**原子化服务API:** 从API version 20开始,该接口支持在原子化服务中使用。|
55
56## 示例
57
58该示例展示如何嵌入式拉起手机充值服务。
59
60```ts
61import { HalfScreenLaunchComponent } from '@kit.ArkUI';
62
63@Entry
64@Component
65struct Index {
66  appId: string = "576****************"; // 原子化服务appId。
67
68  build() {
69    Column() {
70      HalfScreenLaunchComponent({
71        appId: this.appId,
72        options: {},
73        onTerminated:  (info:TerminationInfo)=> {
74          console.info('onTerminated info = '+ info.want);
75        },
76        onError: (err) => {
77          console.error(" onError code: " + err.code + ", message: ", err.message);
78        },
79        onReceive: (data) => {
80          console.info("onReceive, data: " + data['ohos.atomicService.window']);
81        }
82      }) {
83        Column() {
84          Image($r('app.media.app_icon'))
85          Text('拉起手机充值')
86        }.width("80vp").height("80vp").margin({bottom:30})
87      } // 通过尾随必包形式传入content。
88    }
89  }
90
91}
92```
93