场景介绍
本章节将向您介绍如何使用Button组件打开APP功能,可调用对应Button组件打开另一个应用。
效果图展示
单击“打开APP”按钮,出现提示弹窗,单击“允许”,跳转至新的应用界面。
说明
弹窗是否弹出以及弹窗效果与跳转目标APP相关。
开发步骤
- 导入Scenario Fusion Kit模块以及相关公共模块。
- import { FunctionalButton, functionalButtonComponentManager } from '@kit.ScenarioFusionKit';
- import { hilog } from '@kit.PerformanceAnalysisKit';
- 在容器中声明FunctionalButton,指定Button的openType,并设置对应的回调函数,代码如下:
- @Entry
- @Component
- struct Index {
- build() {
- Row() {
- Column() {
- // 声明FunctionalButton
- FunctionalButton({
- params: {
- // OpenType.LAUNCH_APP表示Button为打开APP类型
- openType: functionalButtonComponentManager.OpenType.LAUNCH_APP,
- label: '打开APP',
- // OpenType为“functionalButtonComponentManager.OpenType.LAUNCH_APP”时,appParam参数必填
- appParam: {
- bundleName: "xxx",
- abilityName: "xxx"
- },
- // 调整Button样式
- styleOption: {
- styleConfig: new functionalButtonComponentManager.ButtonConfig()
- .fontSize(20)
- .fontColor(Color.Black)
- },
- },
- // OpenType为“LAUNCH_APP”时,回调必须选择“onLaunchAPP”
- controller: new functionalButtonComponentManager.FunctionalButtonController().onLaunchApp((err) => {
- if (err) {
- // 错误日志处理
- hilog.error(0x0000, "testTag", "error: %{public}d %{public}s", err.code, err.message);
- return;
- }
- // 成功日志处理,成功时无返回值
- hilog.info(0x0000, "testTag", "succeeded in launching app");
- })
- })
- }
- .width('100%')
- }
- .height('100%')
- }
- }
说明
- openType参数填写“functionalButtonComponentManager.OpenType.LAUNCH_APP”指定Button为打开APP类型。
- openType为“functionalButtonComponentManager.OpenType.LAUNCH_APP”时,appParam参数必填。
- “bundleName”为包名,“abilityName”为Ability名称。
- controller参数必须对应填写“new functionalButtonComponentManager.FunctionalButtonController().onLaunchApp”。
其他参数请参考:FunctionalButton(Button组件)。