【FAQ】【ARK UI】HarmonyOS鸿蒙Next应用跳转至应用商店

【FAQ】【ARK UI】HarmonyOS鸿蒙Next应用跳转至应用商店 【问题描述】

js或者ETS怎么跳转到应用商店

【问题答案】

参考链接

H鸿蒙应用跳转至应用商店

【Harmony OS】【ARK UI】ets使用startAbility或startAbilityForResult方式调起Ability

代码如下

import featureAbility from '@ohos.ability.featureAbility'
import wantConstant from '@ohos.ability.wantConstant'

@Entry
@Componentstruct
struct Index {
  @State message: string = '跳转到QQ详情界面'

  public onclick() {
    var str = {
      "want": {
        "deviceId": "",
        "bundleName": "",
        "abilityName": "",
        "uri":"market://details?id=com.tencent.mobileqq",
        "options": {},
        "flags": wantConstant.Flags.FLAG_ABILITY_NEW_MISSION,
        "action": "android.intent.action.VIEW",
        "parameters": {},
      },
      "abilityStartSetting": {}
    };
    featureAbility.startAbility(str)
      .then((data) => {
        console.info('Operation successful. Data: ' + JSON.stringify(data))
      })
      .catch((error) => {
        console.error('Operation failed. Cause: ' + JSON.stringify(error));
      })
  }

  build() {
    Row() {
      Column() {
        Text(this.message)
          .fontSize(50)
          .fontWeight(FontWeight.Bold)
        .onClick(this.onclick.bind(this))
      }
      .width('100%')
    }
    .height('100%')
  }
}

【运行效果】


更多关于【FAQ】【ARK UI】HarmonyOS鸿蒙Next应用跳转至应用商店的实战教程也可以访问 https://www.itying.com/category-93-b0.html

8 回复
action名称

| Action名称                       | 作用                                       |
|----------------------------------|--------------------------------------------|
| android.settings.ACCESSIBILITY_SETTINGS | 跳转系统的辅助功能界面                     |
| android.settings.ADD_ACCOUNT_SETTINGS | 显示添加帐户创建一个新的帐户屏幕。【测试跳转到微信登录界面】 |
| android.settings.AIRPLANE_MODE_SETTINGS | 飞行模式,无线网和网络设置界面             |
| android.settings.WIRELESS_SETTINGS | 飞行模式,无线网和网络设置界面             |
| android.settings.APN_SETTINGS | 跳转 APN设置界面                           |
| android.settings.APPLICATION_DETAILS_SETTINGS | 根据包名跳转到系统自带的应用程序信息界面     |
| android.settings.APPLICATION_DEVELOPMENT_SETTINGS | 跳转开发人员选项界面                       |
| android.settings.APPLICATION_SETTINGS | 跳转应用程序列表界面                       |
| android.settings.MANAGE_ALL_APPLICATIONS_SETTINGS | 跳转到应用程序界面【所有的】               |
| android.settings.MANAGE_APPLICATIONS_SETTINGS | 跳转 应用程序列表界面【已安装的】          |
| android.settings.BLUETOOTH_SETTINGS | 跳转系统的蓝牙设置界面                     |
| android.settings.DATA_ROAMING_SETTINGS | 跳转到移动网络设置界面                     |
| android.settings.DATE_SETTINGS | 跳转日期时间设置界面                       |
| android.settings.DEVICE_INFO_SETTINGS | 跳转手机状态界面                           |
| android.settings.DISPLAY_SETTINGS | 跳转手机显示界面                           |
| android.settings.INPUT_METHOD_SETTINGS | 跳转语言和输入设备                         |
| android.settings.INPUT_METHOD_SUBTYPE_SETTINGS | 【API 11及以上】 // 跳转 语言选择界面 【多国语言选择】 |
| android.settings.INTERNAL_STORAGE_SETTINGS | 跳转存储设置界面【内部存储】               |
| android.settings.MEMORY_CARD_SETTINGS | 跳转 存储设置 【记忆卡存储】               |
| android.settings.LOCALE_SETTINGS | 跳转语言选择界面【仅有English 和 中文两种选择】 |
| android.settings.LOCATION_SOURCE_SETTINGS | 跳转位置服务界面【管理已安装的应用程序。】  |
| android.settings.NETWORK_OPERATOR_SETTINGS | 跳转到 显示设置选择网络运营商。            |
| android.settings.NFCSHARING_SETTINGS | 显示NFC共享设置。 【API 14及以上】        |
| android.settings.NFC_SETTINGS | 显示NFC设置。这显示了用户界面,允许NFC打开或关闭。 【API 16及以上】 |
| android.settings.PRIVACY_SETTINGS | 跳转到备份和重置界面                      |
| android.settings.QUICK_LAUNCH_SETTINGS | 跳转快速启动设置界面                      |
| android.search.action.SEARCH_SETTINGS | 跳转到 搜索设置界面                        |
| android.settings.SECURITY_SETTINGS | 跳转到安全设置界面                        |
| android.settings.SETTINGS | 跳转到设置界面                            |
| android.settings.SOUND_SETTINGS | 跳转到声音设置界面                        |
| android.settings.SYNC_SETTINGS | 跳转账户同步界面                          |
| android.settings.USER_DICTIONARY_SETTINGS | 跳转用户字典界面                          |
| android.settings.WIFI_IP_SETTINGS | 跳转到IP设定界面                          |
| android.settings.WIFI_SETTINGS | 跳转Wifi列表设置                          |

更多关于【FAQ】【ARK UI】HarmonyOS鸿蒙Next应用跳转至应用商店的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


您好,我用了API 9的ArkTS,发现无法跳转。

context.startAbility(
    {
        action: "android.settings.WIRELESS_SETTINGS",
        type: "",
        flags: wantConstant.Flags.FLAG_ABILITY_NEW_MISSION,
        deviceId: "",
        bundleName: "",
        abilityName: "",
        parameters: {},
        entities: [],
        moduleName: "",
        uri: ""
    }
).then((data) => {
    console.info(PERMISSION_TAG, 'Operation successful. Data: ' + JSON.stringify(data))
}).catch((error) => {
    console.error(PERMISSION_TAG, 'Operation failed. Cause: ' + JSON.stringify(error));
})

报错,code = 1,无法跳转。

咋解决的 哥,

私我,

对于 Stage 模型,要用 UIAbilityContext 来启动

gotoUpdate() {
  let context = getContext(this) as common.UIAbilityContext;
  context.startAbility({
    "deviceId": "",
    "bundleName": "com.huawei.appmarket",
    "abilityName": "",
    "uri":"appmarket://details?id=com.tencent.mm",// 跳转到微信
    //"uri":"market://details?id=com.tencent.mobileqq",
    "flags":wantConstant.Flags.FLAG_ABILITY_NEW_MISSION,
    "action": "android.intent.action.VIEW",
    "parameters": {},
  }).then((data) => {
    console.info('onStartRemoteAbility finished, ' + JSON.stringify(data));
  }).catch((err)=>{
    console.info('onStartRemoteAbility failed, ' + JSON.stringify(err));
  })
}

跳转系统界面可以参考如下链接

http://t.zoukankan.com/anni-qianqian-p-5823604.html

如下跳转系统的辅助功能界面代码

import featureAbility from '@ohos.ability.featureAbility'
import wantConstant from '@ohos.ability.wantConstant'

@Entry
@Componentstruct
class Index {
  @State message: string = '跳转设置界面'
  
  public onclick(){
    var str = {
      "want": {
        "deviceId": "",
        "bundleName": "",
        "abilityName": "",
        "uri":"",
        "options": {},
        "flags":wantConstant.Flags.FLAG_ABILITY_NEW_MISSION,
        "action": "android.settings.ACCESSIBILITY_SETTINGS",
        "parameters": {},
      },
      "abilityStartSetting": {}
    };
    featureAbility.startAbility(str)
      .then((data) => {
        console.info('Operation successful. Data: ' + JSON.stringify(data))
      })
      .catch((error) => {
        console.error('Operation failed. Cause: ' + JSON.stringify(error));
      })
  }
  
  build() {
    Row() {
      Column() {
        Text(this.message)
          .fontSize(50)
          .fontWeight(FontWeight.Bold)
          .onClick(this.onclick.bind(this))
      }
      .width('100%')
    }
    .height('100%')
  }
}

运行效果

在HarmonyOS鸿蒙Next中,应用跳转至应用商店可以通过调用系统提供的Intent功能实现。具体步骤如下:

  1. 导入相关模块:首先,在代码中导入@ohos.app.ability.common模块,该模块提供了Intent类的支持。

  2. 创建Intent对象:使用Intent类创建一个对象,并设置其action属性为"ohos.settings.app.MARKET",该动作表示跳转至应用商店。

  3. 设置跳转参数:可以通过parameters属性传递跳转参数,例如应用包名"bundleName",以指定跳转到应用商店的某个应用详情页面。

  4. 调用startAbility:最后,调用startAbility方法,传入创建的Intent对象,即可实现跳转。

示例代码如下:

import common from '@ohos.app.ability.common';

let intent = {
    action: "ohos.settings.app.MARKET",
    parameters: {
        "bundleName": "com.example.app"
    }
};
context.startAbility(intent).then(() => {
    console.log("跳转成功");
}).catch((err) => {
    console.error("跳转失败: " + JSON.stringify(err));
});

在HarmonyOS鸿蒙Next中,应用跳转至应用商店可以通过Want对象实现。首先,创建一个Want对象,指定bundleName为应用商店的包名(如com.huawei.appmarket),并设置uri为目标应用的下载链接。然后,使用startAbility方法启动应用商店。示例代码如下:

let want = {
    bundleName: 'com.huawei.appmarket',
    uri: 'https://appstore.huawei.com/app/C10000001'
};
this.context.startAbility(want).then(() => {
    console.log('跳转成功');
}).catch(err => {
    console.error('跳转失败', err);
});

确保设备已安装应用商店,并处理可能出现的异常。

回到顶部