HarmonyOS 鸿蒙Next 使用DevEco Studio新建demo项目构建并Upload Product报错提示处理
HarmonyOS 鸿蒙Next 使用DevEco Studio新建demo项目构建并Upload Product报错提示处理 问题部分截图,工程build-profile.json5内容如下;尝试修改了各种可疑的配置都无法解决。感觉问题提示不是很清晰,应该并非编译配置的问题。
同样的问题搜索到1个:建了一个元服务 demo ,在upload Product的时候 提示build文件配置有错,但是并没有看到有用的信息。
{
"app": {
"signingConfigs": [],
//工程的签名信息,可包含多个签名信息
"products": [
{
"name": "default",
//定义产品的名称,支持定制多product目标产物
"signingConfig": "default",
//指定当前产品品类对应的签名信息,签名信息需要在signingConfigs中进行定义
"compatibleSdkVersion": "5.0.1(13)",
//指定应用/元服务兼容的最低版本
"targetSdkVersion": "5.0.1(13)",
//指定应用/元服务目标版本
"runtimeOS": "HarmonyOS",
//指定为HarmonyOS
}
],
// 构建模式的集合,每个构建模式是指在执行不同target任务时使用何种构建配置的一套方案,默认打包hap时使用debug,打包app时使用release
"buildModeSet": [
{
"name": "release",
//定义构建模式的类型名称,系统默认给出test、debug和release,用户也可以自定义
"buildOption": {
//配置项目在构建过程中使用的相关配置
"packOptions": {
//包配置选项,可用于构建app时避免生成签名的hap
"buildAppSkipSignHap": false
},
"debuggable": false,
"resOptions": {
"compression": {
"media": {
"enable": true
// 是否对media图片启用纹理压缩
},
// 纹理压缩文件过滤,非必填,不填会压缩资源目录中的所有图片
"filters": [
{
"method": {
"type": "sut",
// 转换类型
"blocks": "4x4"
// 转换类型的扩展参数
},
// 指定用来参与压缩的文件,需要满足所有条件且不被exclude过滤的文件才会参与压缩
"files": {
"path": [
"./**/*"
],
// 指定资源目录中的所有文件
"size": [
[
0,
'10k'
]
],
// 指定大小10k以下的文件
// 指定分辨率小于2048*2048的图片
"resolution": [
[
{
"width": 0,
"height": 0
},
// 最小宽高
{
"width": 2048,
"height": 2048
}
// 最大宽高
]
]
},
// 从files中剔除掉不需要压缩的文件,需要满足所有过滤条件的文件才会被剔除
"exclude": {
"path": [
"./**/*.jpg"
],
// 过滤所有jpg文件
"size": [
[
0,
'1k'
]
],
// 过滤大小1k以下的文件
// 过滤分辨率小于1024*1024的图片
"resolution": [
[
{
"width": 0,
"height": 0
},
// 最小宽高
{
"width": 1024,
"height": 1024
}
// 最大宽高
]
]
}
}
]
}
}
},
//cpp相关编译配置
"externalNativeOptions": {
"path": "./entry/src/main/cpp/CMakeLists.txt",
//CMake配置文件,提供CMake构建脚本
"arguments": [],
//传递给CMake的可选编译参数
"abiFilters": [
//HarmonyOS当前支持的ABI编译环境
"arm64-v8a",
"x86_64"
],
"cppFlags": ""
//设置C++编译器的可选参数
},
"sourceOption": {
//使用不同的标签对源代码进行分类,以便在构建过程中对不同的源代码进行不同的处理
"workers": []
},
//配置筛选har依赖.so资源文件的过滤规则
"nativeLib": {
"filter": {
//按照.so文件的优先级顺序,打包最高优先级的.so文件
"pickFirsts": [
"**/1.so"
],
//按照.so文件的优先级顺序,打包最低优先级的.so文件
"pickLasts": [
"**/2.so"
],
//根据正则表达式排除匹配到的.so文件,匹配到的so文件将不会被打包
"excludes": [
"**/3.so",
//排除所有名称为“3”的so文件
"**/x86_64/*.so"
//排除所有x86_64架构的so文件
],
//允许当.so重名冲突时,使用高优先级的.so文件覆盖低优先级的.so文件
"enableOverride": true
}
}
}
]
},
"modules": [
{
"name": "entry",
//模块名称,须与模块中module.json5文件中的module.name保持一致
"srcPath": "./entry",
//标明模块根目录相对工程根目录的相对路径
"targets": [
//定义构建的APP产物,由product和各模块定义的targets共同定义
{
"name": "default",
//target名称,由各个模块的build-profile.json5中的targets字段定义
"applyToProducts": [
"default"
//表示将该模块下的"default" Target打包到"default" Product中
]
}
]
}
]
}
更多关于HarmonyOS 鸿蒙Next 使用DevEco Studio新建demo项目构建并Upload Product报错提示处理的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
问题已经解决,感谢楼上老哥的提示。工具右上角有个设置 Build Mode的选项,调整一下就好了。默认的模式是default, 这个名字要和 build-profile.json5中的 buildModeSet中的 name一致就好了。不一致,就会报标题中的错误。
更多关于HarmonyOS 鸿蒙Next 使用DevEco Studio新建demo项目构建并Upload Product报错提示处理的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
找HarmonyOS工作还需要会Flutter的哦,有需要Flutter教程的可以学学大地老师的教程,很不错,B站免费学的哦:https://www.bilibili.com/video/BV1S4411E7LY/?p=17
这不是在buildModeSet中设置的吗?我改了 test, debug, release都是一样的结果。
针对HarmonyOS 鸿蒙Next使用DevEco Studio新建demo项目构建并Upload Product时遇到的报错提示处理,可以尝试以下步骤:
-
检查网络连接:确保你的计算机与目标服务器(如华为开发者网站)之间的网络连接稳定。网络不稳定可能导致上传失败。
-
核对项目配置:仔细检查
config.json
文件中的配置信息,确保所有必要的字段都已正确填写,如appid
、package
等,且与华为开发者账号中的信息一致。 -
更新DevEco Studio:确保你使用的DevEco Studio是最新版本。旧版本可能存在已知问题,更新到最新版本可能解决这些问题。
-
清理和重建项目:在DevEco Studio中,尝试清理并重建项目。这可以通过“Build”菜单中的“Clean Project”和“Rebuild Project”选项完成。
-
查看日志:仔细检查构建和上传过程中的日志输出,寻找可能的错误信息或警告,这些信息通常能提供关于问题的更多线索。
-
检查签名证书:确保你使用的签名证书是有效的,并且与你的开发者账号关联。证书问题常常是上传失败的原因之一。
如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html