HarmonyOS 鸿蒙Next如何像安卓一样,打开应用市场对应应用的下载页面

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

HarmonyOS 鸿蒙Next如何像安卓一样,打开应用市场对应应用的下载页面

以下代码是安卓用于从一个APP拉起应用市场APP并打开相对应产品的下载页面,ARKTS如何实现?
public void downloadApp(){
try{
Uri uri = Uri.parse(“market://details?id=” + mWXSDKInstance.getContext().getPackageName());
Intent intent = new Intent(Intent.ACTION_VIEW,uri);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
getContext().startActivity(intent);
}catch(Exception e){
e.printStackTrace();
}
}


更多关于HarmonyOS 鸿蒙Next如何像安卓一样,打开应用市场对应应用的下载页面的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复

可以基于context.startAbility方法拉起指定应用,并携带参数。其中type是固定配置值,uri是"store://appgallery.huawei.com/app/detail"拼接上id参数,才能拉起鸿蒙应用市场详情页面。

uri: 'store://appgallery.huawei.com/app/detail?id='+appId

具体代码demo:

import Want from '[@ohos](/user/ohos).app.ability.Want';

import common from '[@ohos](/user/ohos).app.ability.common';

[@Entry](/user/Entry)

[@Component](/user/Component)

struct Index {

  [@State](/user/State) appId: string = 'C1142586279411547392';

  controller: TextInputController = new TextInputController();

  build() {

    Row() {

      Column() {

        TextInput({ text: this.appId, placeholder: '请输入应用的appId', controller: this.controller })

          .width('90%')

          .onChange((value: string) => {

            this.appId = value

          })

        Button('点击跳转到鸿蒙版应用市场详情页面')

          .margin({top: 50})

          .onClick(()=>{

            const want: Want = {

              uri: `store://appgallery.huawei.com/app/detail?id=${this.appId}`

            };

            const context = getContext(this) as common.UIAbilityContext;

            context.startAbility(want).then(()=>{

              //拉起成功

            }).catch(()=>{

              // 拉起失败

            });

          })

      }

      .width('100%')

    }

    .height('100%')

  }

}

更多关于HarmonyOS 鸿蒙Next如何像安卓一样,打开应用市场对应应用的下载页面的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next上,若希望直接跳转到应用市场对应应用的下载页面,可以通过以下方式实现,这与安卓的某些机制有所不同,但同样可以达到目的:

  1. 使用应用市场的URI Scheme:HarmonyOS的应用市场可能有特定的URI Scheme用于访问应用的下载页面。你需要查找HarmonyOS应用市场的官方文档或相关资料,获取正确的URI格式。

  2. 构建URI并启动Intent:一旦获取到URI Scheme,你可以在你的应用中构建该URI,并使用Intent(在鸿蒙系统中为AbilityIntent)来启动应用市场,同时携带该URI作为参数。这样,应用市场接收到Intent后,会解析URI并跳转到对应应用的下载页面。

  3. 示例代码

    string appMarketUri = "harmonyos-appgallery://details?id=your.app.package.name";
    AbilityIntent intent = new AbilityIntent();
    intent.SetParam(CommonParamNames.URI, Uri.Parse(appMarketUri));
    StartAbility(intent);
    

请注意,上述代码中的URI Scheme和参数需要根据实际的HarmonyOS应用市场进行调整。

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

回到顶部