首页 > 其他分享 >鸿蒙开发实战:轻松配置多环境目录,实现高效应用部署

鸿蒙开发实战:轻松配置多环境目录,实现高效应用部署

时间:2024-11-14 08:48:23浏览次数:1  
标签:实战 高效 cyhh 鸿蒙 default config 环境 com 目录

一、配置环境参数
首先,我们需要为不同的环境配置参数。这些参数可以存放在 JSON 文件中,例如我们创建一个名为config.json的文件,内容如下:

{
"sslkey": "11==",
"qrkey": "122="
}

注意,这里仅为示例,实际参数请根据你的应用需求进行配置。

二、建立环境目录
在鸿蒙的AppScope中,我们可以为每个环境建立一个资源目录。例如,为开发环境和生产环境分别建立resources_default和resources_pro目录,并在每个目录下创建一个rawfile子目录,用于存放不同环境的config.json文件。

目录结构如下:

AppScope/
├── resources_default/
│ └── rawfile/
│ └── config.json # 开发环境配置文件
└── resources_pro/
└── rawfile/
└── config.json # 生产环境配置文件

三、配置工程 build 文件
接下来,我们需要在工程的 build 文件中指定不同环境的资源目录。以下是一个示例配置:

[
{
// 默认环境(开发环境)
"name": "default",
"signingConfig": "default",
"compileSdkVersion": "4.1.0(11)",
"compatibleSdkVersion": "4.1.0(11)",
"runtimeOS": "HarmonyOS",
"output": {
"artifactName": "default_app"
},
"resource": {
"directories": [
"./AppScope/resources_default"
]
}
},
{
// 生产环境
"name": "pro",
"signingConfig": "default",
"compileSdkVersion": "4.1.0(11)",
"compatibleSdkVersion": "4.1.0(11)",
"runtimeOS": "HarmonyOS",
"output": {
"artifactName": "pro_app"
},
"resource": {
"directories": [
"./AppScope/resources_pro"
]
}
}
]
cyhh.huanbao580.com,cyhh.szlcdpq.com
cyhh.sdymsxfh.com,cyhh.tanjiuspace.com
四、调用配置参数
在需要的地方,我们可以通过代码获取配置参数。以下是一个示例代码:

public localRes() {
// 获取配置文件
try {
let rawFile = this.resourceManager.getRawFileContentSync("config.json");
let textDecoder = util.TextDecoder.create('utf-8', { ignoreBOM: true });
let jsonString = textDecoder.decodeWithStream(rawFile, { stream: false });
let configObj = JSON.parse(jsonString) as Config;
Log.debug('config 打印: ' + jsonString);
// 使用configObj中的参数...
} catch (e) {
console.error("config 错误: " + e);
}
}
cyhh.scffy.cn,cyhh.cnjiasi.cn,cyhh.xintiao78.com
cyhh.62nsfs.com,cyhh.jinduoceramics.com,cyhh.shuixitech.com

注意,在调用配置参数时,由于我们已经指定了不同环境的资源目录,因此getRawFileContentSync方法会自动从当前环境的资源目录中加载config.json文件。

五、总结
通过本文的介绍,相信你已经掌握了如何在鸿蒙中配置多环境目录的方法。这种方法可以让你的应用部署更加灵活高效,方便你在不同的环境中使用不同的参数和资源。如果你有任何疑问或建议,请随时在评论区留言。

标签:实战,高效,cyhh,鸿蒙,default,config,环境,com,目录
From: https://www.cnblogs.com/bkbk1234/p/18545229

相关文章

  • 鸿蒙开发实战:智能日志定位与高效调试技巧
    在鸿蒙系统的开发过程中,日志定位是一个关键的调试步骤。想象一下,如果你能够轻松地在繁杂的代码中快速定位到日志产生的位置,那将会极大地提高你的开发效率。今天,我将分享一套代码,它能帮助你实现这一目标。效果展示当你使用这套代码时,日志的打印效果将如下所示:W1234at(ent......
  • 鸿蒙 Next 元素定位
    在鸿蒙next中,子元素想要相对于父元素定位会使用到.opsition()这个属性,用法如下:@Entry@ComponentstructPositionExample1{build(){Column(){Row(){}.position({x:50,y:50})}.width('100%').height('100%')}}cbwe.hgyb0831.com,cbwe.bochendoor.c......
  • vscode + typora + picgo 搭建高效博客(cnblog)工作流
    vscode+typora+picgo搭建高效博客(cnblog)工作流笔者最初在cnblog上面发了很多随笔(水文),后面感觉广告有点多,并且难于管理文章,于是破罐破摔(不要学我)搭建了自己的博客。后来,我折腾过wordpress、jeklly、githubPages(hexo)和giteePages等等,既放不下cnblog上的流量与互动(......
  • 简单上手python爬虫实战:阜阳市历史天气数据爬取
        这里我们学校开始了见习,搞的是阜阳市历史天气数据看板,加了点大数据方面的技术栈,我这里就不讲了,出一期非常简单的爬虫代码吧。1数据来源    这里我们用的网站是天气后报里的,网站如下:历史天气查询|天气记录|天气预报|气温查询|过去天气_天气后报http://ti......
  • TensorFlow\Keras实战100例——GAN生成图像
     一.原理说明GAN包括两个主要部分:生成器(Generator)鉴别器(Discriminator)。生成器负责创建新颖的图像,而鉴别器负责了解生成的图像有多好。我们要为GAN图像生成构建的整个架构如下图所示。二.数据说明MINST数据集是机器学习领域一个经典的数据集,其中包括70000个样本,包......
  • TensorFlow\Keras实战100例——变分自编码器生成图像
    一.原理说明变分自编码器是自编码器的改进版本,自编码器是一种无监督学习,但它无法产生新的内容,变分自编码器对其潜在空间进行拓展,使其满足正态分布,情况就大不一样了。自编码器是通过对输入X进行编码后得到一个低维的向量z,然后根据这个向量还原出输入X。通过对比X与X̃的误差,......
  • 项目实战:Qt+OpenCV透视变换工具v1.1.0(支持打开图片、输出棋盘角点、调整偏移点、导出
    需求  1.打开图片;  2.矫正识别角点;  3.四点对应偏移距离;  4.支持设置棋盘格的行列角点数;  5.导出结果图片; 背景  深入研究图像拼接细分支算法,产出的效果查看工具,验证算法单步思路。 相关博客  《项目实战:Qt+OpenCV透视变换工具v1.1.0(支持打开图......
  • 丹摩征文活动|FLUX.1+ComfyUI高效部署策略与实践
    ......
  • 【Unity人群寻路插件】CrowdPath Pathfinding 高效的路径规划算法来模拟群体寻路行为,
    CrowdPathPathfinding是一款专为Unity设计的路径寻找插件,主要用于处理复杂的人群导航问题,特别适合需要大规模虚拟人物群体移动的游戏或应用。它通过高效的路径规划算法来模拟群体行为,如避开障碍、避免拥挤、相互避让等。主要特点:高效的人群路径寻找:插件能够在复杂环境......
  • 鸿蒙高质量代码静态检测200条四
    @cross-device-app-dev/font-size字体大小要求至少为8fp以便于阅读@cross-device-app-dev/grid-columns-span不推荐开发者将栅格中所有的GridCol子组件只设置span属性,且值与父组件的columns属性相等@cross-device-app-dev/grid-span-value在栅格布局组件GridCol中......