HarmonyOS鸿蒙Next中应用或元服务上架检测FAQ:必须有图标

HarmonyOS鸿蒙Next中应用或元服务上架检测FAQ:必须有图标

概述

应用/元服务图标是用户识别和访问服务的重要视觉标识,图标需要在设备桌面上清晰展示,作为用户与服务的直接交互入口。

设计原则

1、静态检查,app.json5配置文件中的icon字段,该字段不可缺省。

2、icon字段为索引地址时,地址所指文件夹不可为空。

3、icon字段为索引地址时,地址所指文件应在文件夹中存在。

典型案例

常见问题一:您的应用没有图标,配置文件为工程名称/AppScope/app.json5,icon的值通过$符号引用的资源文件工程中不存在。

{
  "app": {
    "bundleName": "com.application.myapplication",
    "vendor": "example",
    "versionCode": 1000000,
    "versionName": "1.0.0",
    // icon的值通过$符号引用的资源文件工程中不存在
    "icon": "$media:layered_image",
    "label": "$string:app_name",
    "description": "$string:description_application",
    "minAPIVersion": 9,
    "targetAPIVersion": 9,
    "debug": false,
    "car": {
      "minAPIVersion": 8
    },
    "appEnvironments": [
      {
        "name":"name1",
        "value": "value1"
      }
    ],
    "maxChildProcess": 5,
    "multiAppMode": {
      "multiAppModeType": "appClone",
      "maxCount": 5
    },
    "hwasanEnabled": false,
    "ubsanEnabled": false,
    "cloudFileSyncEnabled": false,
    "cloudStructuredDataSyncEnabled": false,
    "configuration": "$profile:configuration",
    "assetAccessGroups": [
      "com.ohos.photos",
      "com.ohos.screenshot",
      "com.ohos.note"
    ],
    "startMode": "mainTask"
  }
}

常见问题二:您的应用没有图标,配置文件为工程名称/AppScope/app.json5,icon的值为空。

{
  "app": {
    "bundleName": "com.application.myapplication",
    "vendor": "example",
    "versionCode": 1000000,
    "versionName": "1.0.0",
    // icon的值为空
    "icon": "",
    "label": "$string:app_name",
    "description": "$string:description_application",
    "minAPIVersion": 9,
    "targetAPIVersion": 9,
    "debug": false,
    "car": {
      "minAPIVersion": 8
    },
    "appEnvironments": [
      {
        "name":"name1",
        "value": "value1"
      }
    ],
    "maxChildProcess": 5,
    "multiAppMode": {
      "multiAppModeType": "appClone",
      "maxCount": 5
    },
    "hwasanEnabled": false,
    "ubsanEnabled": false,
    "cloudFileSyncEnabled": false,
    "cloudStructuredDataSyncEnabled": false,
    "configuration": "$profile:configuration",
    "assetAccessGroups": [
      "com.ohos.photos",
      "com.ohos.screenshot",
      "com.ohos.note"
    ],
    "startMode": "mainTask"
  }
}

修改指引

应用或元服务图标通过app.json5配置文件中icon引用,如果icon的值通过$符号引用的资源文件工程中不存在,或icon的值为空,会导致应用或元服务图标显示异常,需要开发者手动添加或替换为实际的资源文件。详情见app.json5配置文件

在系统“设置->应用和元服务”列表中,应用无图标显示,问题定位,分析和修改建议详情见应用和元服务列表中无图标显示

应用上架前迭代版本测试可使用DevEco Testing应用上架预检功能在本地设备/虚拟机提供黑盒专业测试能力,提前发现上架基础体验类问题,提升上架审核效率。

应用上架提审前可使用云测试应用上架预检功能在云端提供远程黑盒专业测试,包含多品类,多设备,多OS的兼容测试能力,提前发现上架基础体验类问题,提升上架审核效率。

上架预检生成检测报告后,导入到AppAnalyzer工具进行诊断和分析,获得可能的故障原因并生成体检报告。


更多关于HarmonyOS鸿蒙Next中应用或元服务上架检测FAQ:必须有图标的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

在HarmonyOS Next中,应用或元服务上架检测要求必须提供图标。图标需符合设计规范,包括尺寸、格式和视觉风格。未提供图标将导致上架审核不通过。

更多关于HarmonyOS鸿蒙Next中应用或元服务上架检测FAQ:必须有图标的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS Next中,应用或元服务的图标是上架审核的强制要求,也是用户体验的基础。根据你提供的FAQ内容,核心问题在于 app.json5 配置文件中的 icon 字段配置不正确。

主要问题及解决方案如下:

  1. icon 字段引用资源不存在:如示例中 "icon": "$media:layered_image",但 media 资源目录下没有名为 layered_image 的图片资源。

    • 解决:检查 AppScope/resources/base/media/ 目录,确保引用的图片文件(如 layered_image.png.svg)实际存在,且文件名与引用名完全一致。
  2. icon 字段值为空字符串:如示例中 "icon": ""

    • 解决:必须为 icon 字段配置一个有效的资源引用路径,例如 "$media:app_icon"

正确配置步骤:

  • 将设计好的应用图标文件(推荐使用 .svg 矢量图,或提供多分辨率 .png)放置于 工程目录/AppScope/resources/base/media/ 下。
  • app.json5 文件的 app 对象中,确保 icon 字段正确引用该资源,例如:"icon": "$media:app_icon"
  • 图标需符合设计规范,在不同设备上清晰可辨。

上架前,务必使用 DevEco Testing本地预检云测试云端预检 功能进行检测,可提前发现此类基础配置问题。检测报告可导入 AppAnalyzer工具 进行详细诊断。

确保图标正确配置是应用上架的必要前提,请仔细核对配置与资源文件。

回到顶部