更新升级 专属应用 系统故障 硬件故障 电脑汽车 鸿蒙刷机 鸿蒙开发Linux教程 鸿蒙开发Linux命令
当前位置:HMXT之家 > 应用开发 > 鸿蒙HarmonyOS API 4-7工程怎么升级为API 8工程?附方法

鸿蒙HarmonyOS API 4-7工程怎么升级为API 8工程?附方法

更新时间:2022-07-08 15:33:02浏览次数:468+次

想知道鸿蒙HarmonyOS API 4-7工程怎么才能升级为API 8工程吗?以下给出两种实现的方法。

前言

鸿蒙开发工具DevEco Studio 3.0.0.990版本支持HarmonyOS API 8应用开发,其采用了Hvigor自动化构建工具进行构建,而HarmonyOS API 4-7的工程,则是采用Gradle自动化构建工具,因此两者的编译构建工具、编译构建文件、工程结构均存在差异。

针对以上的场景,本文提供了两种适配方法,将您的HarmonyOS 4-7的eTS/JS工程升级至API 8。

方法一(推荐采用此方法)

1、使用DevEco Studio创建一个HarmonyOS新工程。在配置工程信息时,请注意:

Bundle name:请与需要适配的历史工程的Bundle name保持一致。待适配工程的Bundle name字段可在模块目录下的config.json文件中进行查阅。

Compile SDK:请选择将要适配的目标API版本,只支持选择8。

Language:选择与待适配工程使用的代码语言保持一致。

\

2、等待工程npm install执行完成后,删除entry下的src目录,请注意,其它配置文件请不要删除。

\

3、将待适配工程entry模块下的src目录,拷贝到上述工程的entry文件夹下。

说明:如果待适配工程存在多个模块,可拷贝上述整个entry模块文件夹并修改模块名,然后将待适配模块中的源码和资源文件夹,替换到该模块下即可。

4、如果是eTS工程,请修改eTS源码文件中的引用包的后缀名,由import xx from‘xx.ets’修改为import xx from‘xx’,去掉.ets后缀名。

至此,HarmonyOS历史工程便适配完成,您可以通过点击Build > Build Hap(s)/App(s) > Build Hap(s)验证是否可以正常编译构建HAP包。

方法二

1、在本地电脑中,进入HarmonyOS工程所在文件夹。

2、在工程根目录下,修改相关配置文件。

1]、删除Gradle相关的文件及缓存文件,如下图蓝色框所示的文件及文件夹。

\

2]、打开工程根目录下local.properties文件,并根据实际路径进行修改。

3]、新建一个文本文件,命名修改为“hvigorfile.js”。

4]、打开hvigorfile.js文件,写入如下脚本信息。写入后,保存并关闭文件即可。

module.exports = require('@ohos/hvigor-ohos-plugin').legacyAppTasks

5]、打开package.json文件,写入如下脚本信息,其中:name、version和org字段,请根据实际进行填写,其余字段保持不变。写入后,保存并关闭文件即可:

{

  "name": "myapplication",

  "version": "1.0.0",

  "ohos": {

    "org": "huawei",

    "buildTool": "hvigor",

    "directoryLevel": "project"

  },

  "description": "example description",

  "repository": {},

  "license": "ISC",

  "dependencies": {

    "hypium": "^1.0.1",

    "@ohos/hvigor": "1.1.5",

    "@ohos/hvigor-ohos-plugin": "1.1.5"

  }

}

6]、新建一个文本文件,命名修改为“build-profile.json5”。

7]、打开build-profile.json5文件,写入如下脚本信息,其中compileSdkVersion和compatibleSdkVersion请修改为8或9,其余字段请参考工程级build-profile.json5说明进行修改。写入后,保存并关闭文件即可:

{

  "app": {

    "signingConfigs": [],

    "compileSdkVersion": 8,

    "compatibleSdkVersion": 8,

    "products": [

      {

        "name": "default",

        "signingConfig": "default",

      }

    ]

  },

  "modules": [

    {

      "name": "entry",

      "srcPath": "./entry",

      "targets": [

        {

          "name": "default",

          "applyToProducts": [

            "default"

          ]

        }

      ]

    }

  ]}

3、进入模块目录下,修改相关配置文件。如有多个模块,请逐一修改。

1]、删除build文件夹、build.gradle和progurad-rules.pro文件。

\

?2]、新建一个文本文件,命名修改为“package.json”。

3]、打开package.json文件,写入如下脚本信息:

{

  "name": "entry",

  "version": "1.0.0",

  "ohos": {

    "org": "huawei",

    "buildTool": "hvigor",

    "directoryLevel": "module"

  },

  "description": "example description",

  "repository": {},

  "license": "ISC",

  "dependencies": {}

}

4]、新建一个文本文件,命名修改为“hvigorfile.js”。

5]、打开hvigorfile.js文件,写入如下脚本信息。写入后,保存并关闭文件即可:

module.exports = require('@ohos/hvigor-ohos-plugin'). legacyHapTasks

6]、新建一个文本文件,命名修改为“build-profile.json5”。

7]、打开build-profile.json5文件,写入如下脚本信息。写入后,保存并关闭文件即可:

{

  "apiType": 'faMode',

  "buildOption": {

  },

  "targets": [

    {

      "name": "default"

      "runtimeOS": "HarmonyOS"

    },

    {

      "name": "ohosTest",

    }

  ]

}

4、如果是eTS工程,请修改eTS源码文件中的引用包的后缀名,由import xx from‘xx.ets’修改为import xx from‘xx’,去掉.ets后缀名。

5、使用新版本的DevEco Studio打开修改后的工程,点击底部工具栏的Terminal,然后执行npm install命令,安装相关依赖。

\

至此,HarmonyOS历史工程便适配完成,您可以通过点击Build > Build Hap(s)/App(s) > Build Hap(s)验证是否可以正常编译构建HAP包。??

相关参考:在DevEco Studio上用从每日构建上获取的OpenHarmony API9 SDK