HarmonyOS 鸿蒙Next 编写har包的编译脚本时如何获取当前的product

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

HarmonyOS 鸿蒙Next 编写har包的编译脚本时如何获取当前的product

在编译的时候添加了一些plugin去进行相关的操作,需要获取到不通的product来获取不同的文件路径

深色代码主题
复制
import { harTasks } from @ohos/hvigor-ohos-plugin’;

function harTask(): HvigorPlugin {

return {

<span class="hljs-attr">pluginId</span>: <span class="hljs-string">'harTask'</span>,

<span class="hljs-title function_">apply</span>(<span class="hljs-params">node: HvigorNode</span>) {

  <span class="hljs-variable language_">console</span>.<span class="hljs-title function_">log</span>(<span class="hljs-string">'hello harTasks!'</span>);

}

}

}

export default {

system: harTasks,

plugins: [harTask()]

}

有人知道怎么在harTask里面拿到当前编译的product?


更多关于HarmonyOS 鸿蒙Next 编写har包的编译脚本时如何获取当前的product的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复
在编译构建时,Hvigor会生成BuildProfile类,可以下述获取product
深色代码主题
复制
@State message: string = BuildProfile.PROUDUCT_NAME;

参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-hvigor-get-build-profile-para-guide-V5#section195881502412

更多关于HarmonyOS 鸿蒙Next 编写har包的编译脚本时如何获取当前的product的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


您好,当前已经可以自定义har包的包名和编译过程,从oh-package.json5中获取编译的product信息

深色代码主题
复制
let res = fs.readJSONSync(path.join(taskContext.modulePath, "oh-package.json5"))
return { "name": res.name, "version": res.version }

具体可以参考帖子: https://laval.csdn.net/66b076fd4c4d4739818eedd5.html

在HarmonyOS鸿蒙Next中,编写har包的编译脚本时,如需获取当前的product,可以使用环境变量或者配置文件中定义的变量。以下是一个简要的实现方法:

  1. 环境变量:在编译环境中,product信息通常会被设置成一个环境变量,例如PRODUCT_NAME。你可以直接在编译脚本中引用这个环境变量。

    PRODUCT_NAME=$PRODUCT_NAME  # 假设环境变量已经设置
    echo "当前product是: $PRODUCT_NAME"
    
  2. 配置文件:在一些构建系统中,product信息可能被定义在配置文件中,比如product.mkproduct.json。你可以通过读取这些配置文件来获取product信息。

    # 假设product信息在product.json中
    PRODUCT_NAME=$(jq -r '.productName' product.json)
    echo "当前product是: $PRODUCT_NAME"
    

    注意,使用jq工具解析JSON文件需要确保系统中已安装jq

这两种方法都能有效获取当前的product信息,并可以在编译har包时使用。

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

回到顶部