HarmonyOS 鸿蒙Next关于want拉起界面问题

发布于 1周前 作者 phonegap100 最后一次编辑是 5天前 来自 鸿蒙OS

HarmonyOS 鸿蒙Next关于want拉起界面问题

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V13/ability-api-V13

 官方文档中提供了拉起HOME-WLAN界面的uri为’wifi_entry’,我想知道其他界面的uri地址(比如定位设置、通知设置)

// 拉起"设置"应用的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});
});
} 


更多关于HarmonyOS 鸿蒙Next关于want拉起界面问题的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复
import common from '@ohos.app.ability.common';
[@Entry](/user/Entry)
[@Component](/user/Component)
struct Index {
  [@State](/user/State) message: string = 'Hello World';
  build() {
    Row() {
      Column() {
        Button('跳转到设置').onClick(() => {
          let context = getContext(this) as common.UIAbilityContext;
          context.startAbility({
            bundleName: 'com.huawei.hmos.settings',
            abilityName: 'com.huawei.hmos.settings.MainAbility',
            parameters: {
              pushParams: 'com.example.tosettingdemo'// 应用包名
            }
          });
        })
        Button('to蓝牙').onClick(() => {
          let context = getContext(this) as common.UIAbilityContext;
          context.startAbility({
            bundleName: 'com.huawei.hmos.settings',
            abilityName: 'com.huawei.hmos.settings.MainAbility', // com.huawei.hmos.settings.AppInfoAbility
            uri: 'bluetooth_entry', //application_settings application_info_entry
          });
        })
        Button('toWLAN页面').onClick(() => {
          let context = getContext(this) as common.UIAbilityContext;
          context.startAbility({
            bundleName: 'com.huawei.hmos.settings',
            abilityName: 'com.huawei.hmos.settings.MainAbility', // com.huawei.hmos.settings.AppInfoAbility
            uri: 'wifi_entry', //application_settings application_info_entry
          });
        })
        Button('to应用信息').onClick(() => {
          let context = getContext(this) as common.UIAbilityContext;
          context.startAbility({
            bundleName: 'com.huawei.hmos.settings',
            abilityName: 'com.huawei.hmos.settings.MainAbility', // com.huawei.hmos.settings.AppInfoAbility
            uri: 'application_info_entry', //application_settings application_info_entry
            parameters: {
              pushParams: context.abilityInfo.bundleName // 应用包名com.example.tosettingdemo ‘uiAbilityContext.abilityInfo.bundleName’
            }
          });
        })
      }
    }
  } 

更多关于HarmonyOS 鸿蒙Next关于want拉起界面问题的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


// 拉起"设置"应用的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}`);
  });复制

若需拉起设置应用的其他界面可参考下表,修改uri字段即可:

表1 设置应用相关界面对应的uri字段选择

字段

拉起界面

手机设备是否支持

2in1设备是否支持

/

HOME-设置

wifi_entry

HOME-WLAN

bluetooth_entry

HOME-蓝牙

mobile_network_entry

HOME-移动网络

hotspot_data_settings

HOME-移动网络-个人热点界面

password_entry

HOME-移动网络-个人热点-密码界面

connected_device_entry

HOME-移动网络-个人热点-已连接设备界面

more_share_entry

HOME-移动网络-个人热点-更多共享设置界面

more_connections_settings

HOME-更多连接

nfc_settings

HOME-更多连接-NFC三级页面

display_settings

HOME-显示和亮度

screen_zoom

HOME-显示和亮度-显示大小三级页面

screen_refresh_rate_entry

HOME-显示和亮度-屏幕刷新率三级页面

需看具体设备是否有刷新率选项

volume_settings

HOME-声音和振动

systemui_notification_settings

HOME-通知和状态栏

accessibility_feature

HOME-辅助功能

accessibility_operation_entry

HOME-辅助功能-辅助功能快捷键三级页面

accessibility_more_settings_entry

HOME-辅助功能-已安装的服务-服务详情-更多设置五级页面

application_and_service_settings

HOME-应用与元服务

application_settings

HOME-应用与服务-应用管理三级页面

application_info_entry

HOME-应用和元服务HOME-某个具体应用的应用信息,需传递want.parameters.pushParams为具体应用的包名

storage_settings

HOME-存储界面

battery

HOME-电池

biometrics_and_password_settings

HOME-生物识别和密码

lock_screen_password_title

HOME-生物识别和密码-设置数字锁屏密码

change_six_to_number_entry

HOME-生物识别和密码-锁屏密码(其他密码类型)-自定义数字密码(设置锁屏数字密码)四级页面

change_six_to_mixed_entry

HOME-生物识别和密码-锁屏密码(其他密码类型)-混合密码(设置锁屏密码)四级页面

fingerprint_settings_entry

HOME-生物识别与密码-指纹3级页面

需看具体设备是否支持指纹解锁能力

privacy_settings

HOME-隐私与安全

location_help_entry

HOME-隐私与安全-定位服务-帮助四级页面

users_accounts

HOME-用户和账户

current_user

HOME-用户和账户-当前登录(用户)三级页面

system_and_updates

HOME-系统和更新

time_zone_settings

HOME-系统和更新-日期时间-时区-时区选择列表

date_and_time

HOME-系统和更新-日期时间三级页面

set_language

HOME-系统和更新-语言和输入法-语言和输入法四级页面

set_language_region

HOME-系统和更新-语言和输入法-语言和地区-语言和地区5级页面

reset_settings

HOME-系统和更新-重置三级页面

developer_options_settings

HOME-系统和更新-开发人员选项三级页面

edit_language_entry

HOME-系统和更新-语言和输入法-语言和地区-编辑(编译语言)五级页面

add_language_entry

HOME-系统和更新-语言和输入法-语言和地区-添加语言五级页面

select_region_entry

HOME-系统和更新-语言和输入法-语言和地区-当前地区(选择地区)五级页面

reset_factory_settings

HOME-系统和更新-重置-恢复出厂设置四级页面

reset_net_settings

HOME-系统和更新-重置-还原网络设置四级页面

reset_confirm_settings

HOME-系统和更新-重置-恢复出厂设置-重置手机五级页面

reset_net_confirm_settings

HOME-系统和更新-重置-还原网络设置-还原网络设置确认五级页面

about_device

HOME-关于本机界面

device_name

HOME-关于本机-设备名称

更多内容可看这里:https://developer.huawei.com/consumer/cn/doc/harmonyos-faqs/faqs-ability-kit#section1932183812391 

针对HarmonyOS 鸿蒙Next关于want拉起界面问题,以下是一些专业的解答:

在HarmonyOS中,want是用于描述跨应用或服务间通信的Intent机制的实现。当你想通过want拉起一个界面时,需要确保want对象中的参数正确配置。

  1. 确保want参数正确

    • actions:指定要执行的动作,如ohos.want.action.viewData
    • bundleName和abilityName:指定目标应用的包名和Ability名称。
    • uri:用于指定要访问的资源或界面的URI。
    • parameters:包含其他必要的参数。
  2. 隐式want与显式want

    • 隐式want:不指定具体的bundleName和abilityName,而是通过actions、uri等参数进行匹配。
    • 显式want:直接指定bundleName和abilityName,精确拉起目标界面。
  3. 特殊URI的使用

    • 对于某些系统设置界面,可以使用特定的URI来拉起,如wifi_entry拉起WLAN界面。
  4. 参数传递与接收

    • 使用want传递参数时,确保接收方能够正确解析和处理这些参数。

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

回到顶部