HarmonyOS 怎么通过ArkTS打开设置页面?

怎么通过手机打开设置页面的gps界面,打开设置页面的网络WIFI界面(网络关闭后 可以直接跳到设置页面中 直接打开网络连接),怎么打开权限界面,有部分权限被拒绝后 我能不能跳到权限界面去开启

阅读 638
1 个回答

设置中拉起WLAN界面的Demo参考如下:

import { common, Want } from '@kit.AbilityKit';
import { BusinessError } from '@kit.BasicServicesKit';

// 拉起"设置"应用的HOME-WLAN界面
function startSettingsAbilityWifi(context: common.UIAbilityContext): void {
  let want: Want = {
    bundleName: 'com.huawei.hmos.settings',
    abilityName: 'com.huawei.hmos.settings.MainAbility',
    // 根据”设置”应用配置的界面信息,选择不同的uri
    uri: 'wifi_entry'
  };
  context.startAbility(want).then(() => {
    console.info('Start settings ability successfully.');
  }).catch((err: BusinessError) => {
    console.error(`Failed to startAbility. Code: ${err.code}, message: ${err.message}`);
  });
}

@Entry
@Component
struct StartSettingsAbilityView {
  @State message: string = '拉起设置应用HOME-WLAN界面';

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

如何拉起设置应用的常用界面的参考链接:

https://developer.huawei.com/consumer/cn/doc/harmonyos-faqs-V5/faqs-ability-53-V5

跳转至设置位置信息参考Demo如下:

import { common } from '@kit.AbilityKit';

@Entry
@Component
struct SettingTest {

  build() {
    Row() {
      Column() {
        Button("to定位").onClick(() => {
          let context = getContext(this) as common.UIAbilityContext;
          context.startAbility({
            bundleName: 'com.huawei.hmos.settings',
            abilityName: 'com.huawei.hmos.settings.MainAbility',
            uri: "location_manager_settings",
            parameters: { pushParams: context.abilityInfo.bundleName }
          });
        }).margin(10)
      }
      .width('100%')
    }
    .height('100%')
  }
}