HarmonyOS 鸿蒙Next 使用BuildProfile.BUILD_MODE_NAME判断当前是release包还是debug包打包编译不通过

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

封装一个全局Log类,意在debug版本输出log,release版本自动关闭log,使用BuildProfile.BUILD_MODE_NAME编译不通过。 用static和实例化方式均不行。

import BuildProfile from 'BuildProfile'; 
private static showLog: boolean = BuildProfile.BUILD_MODE_NAME == 'debug' 
// 是否显示打印日志,判断当前是release包还是debug包 1、
showLog(){ return !!(BuildProfile.BUILD_MODE_NAME === 'debug') } 
/** * 打印WARN级别日志 * @param args */ 
log(...args: Array<string|number|boolean|undefined>): void { 
  if (this.showLog()) { 
    hilog.warn(LogUtil.domain, LogUtil.tag, LogUtil.format.repeat(args.length), args) 
  }
}

2、编译报错:1 ERROR: ArkTS:ERROR File: C:/Users/86185/DevEcoStudioProjects/harmony/entry/src/main/ets/pages/utils/LogUtils.ets:45:15 This comparison appears to be unintentional because the types ‘“release”’ and ‘“debug”’ have no overlap.


更多关于HarmonyOS 鸿蒙Next 使用BuildProfile.BUILD_MODE_NAME判断当前是release包还是debug包打包编译不通过的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复
可以动态修改setDependenciesOpt

api文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-build-expanding-context-0000001777620174-V5#section18789410129

参考下自定义任务:通过自定义任务修改oh-package.json5依赖:

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-hvigor-config-ohos-sample-0000001815605968-V5

BuildProfile属性值加上.toString()方法去判断。 

showLog() {

    return !!(BuildProfile.BUILD_MODE_NAME.toString() === ‘release’)

  }

更多关于HarmonyOS 鸿蒙Next 使用BuildProfile.BUILD_MODE_NAME判断当前是release包还是debug包打包编译不通过的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next中,若使用BuildProfile.BUILD_MODE_NAME判断当前是release包还是debug包时打包编译不通过,通常是因为编译配置或代码使用不当。

BuildProfile.BUILD_MODE_NAME是一个常量,其值由编译时的构建配置决定。确保你的项目在build.gradlepom.xml(取决于你使用的构建工具)中正确设置了构建类型(release或debug)。

  1. 检查构建配置文件

    • 确保build.gradlepom.xml中定义了debugrelease的构建类型。
    • 验证是否指定了正确的签名和构建选项。
  2. 代码使用

    • 在代码中,直接引用BuildProfile.BUILD_MODE_NAME进行判断。例如:
      if (BuildProfile.BUILD_MODE_NAME == "release") {
          // release模式逻辑
      } else {
          // debug模式逻辑
      }
      
  3. 清理和重建项目

    • 有时候,构建缓存可能会导致问题。尝试清理项目并重新构建。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html。确保在联系客服时提供详细的错误信息和构建配置,以便快速定位问题。

回到顶部