HarmonyOS 鸿蒙Next如何拉起设置应用的常用界面

发布于 1周前 作者 zlyuanteng 来自 鸿蒙OS

HarmonyOS 鸿蒙Next如何拉起设置应用的常用界面

如何拉起设置应用的常用界面

8 回复

开发者可以通过配置以下示例代码中的uri字段完成拉起不同的设置中的应用界面,例如以下示例代码拉起WLAN界面

import common from '@ohos.app.ability.common';
import Want from '@ohos.app.ability.Want';
import { BusinessError } from '@ohos.base';

// 拉起设置应用的应用信息页面
function startSettingsAppInfoAbility(context: common.UIAbilityContext): void {
  let want: Want = {
    action: 'action.settings.app.info',
    parameters: {
      settingsParamBundleName: 'com.example.myapplication',
    }
  };
  context.startAbility(want)
    .then(() => {
      // ...
    })
    .catch((err: BusinessError) => {
      console.error(`Failed to startAbility. Code: ${err.code}, message: ${err.message}`);
    });
}

// 拉起设置应用的应用信息页面
function startSettingsAppInfoAbilityExplicit(context: common.UIAbilityContext): void {
  let want: Want = {
    bundleName: 'com.huawei.hmos.settings',
    abilityName: 'com.huawei.hmos.settings.AppInfoAbility',
    action: 'action.settings.app.info',
    parameters: {
      settingsParamBundleName: 'com.example.myapplication',
    }
  };
  context.startAbility(want)
    .then(() => {
      // ...
    })
    .catch((err: BusinessError) => {
      console.error(`Failed to startAbility. Code: ${err.code}, message: ${err.message}`);
    });
}

@Entry
@Component
struct Index {
  @State message: string = 'Hello World';

  build() {
    Row() {
      Column() {
        Text(this.message)
          .fontSize(50)
          .fontWeight(FontWeight.Bold)
          .onClick(() => {
            const context: common.UIAbilityContext = getContext(this) as common.UIAbilityContext;
            startSettingsAppInfoAbility(context);
          })
      }
      .width('100%')
    }
    .height('100%')
  }
}

有输入法界面的uri吗

报错:Error: The specified ability does not exist.怎么解决?

看楼主帖子标签,这是NEXT才有的,不是该版本无解。

 如何在拉起的页面,添加一个返回到原app功能,例如图中返回京东功能(图例为ios)cke_132.jpeg

同求 有方案踢一下

感觉这个之后会加 不知道什么样的形式吧

在HarmonyOS鸿蒙Next系统中,拉起设置应用的常用界面可以通过编写特定的代码实现。以下是一些示例代码,展示了如何拉起不同的设置界面:

  1. 拉起WLAN界面:
let want: Want = {
  bundleName: 'com.huawei.hmos.settings',
  abilityName: 'com.huawei.hmos.settings.MainAbility',
  uri: 'wifi_entry'
};
context.startAbility(want);
  1. 拉起蓝牙界面:
let want: Want = {
  bundleName: 'com.huawei.hmos.settings',
  abilityName: 'com.huawei.hmos.settings.MainAbility',
  uri: 'bluetooth_entry'
};
context.startAbility(want);
  1. 拉起移动网络界面:
let want: Want = {
  bundleName: 'com.huawei.hmos.settings',
  abilityName: 'com.huawei.hmos.settings.MainAbility',
  uri: 'mobile_network_entry'
};
context.startAbility(want);

以上代码中的context代表当前的UIAbilityContext。不同的URI对应不同的设置界面,开发者可以根据需要选择相应的URI。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部