HarmonyOS鸿蒙Next可以实现文件关联,那可以设置被关联文件的图标吗

HarmonyOS鸿蒙Next可以实现文件关联,那可以设置被关联文件的图标吗 cke_158.png

"uris": [
  {
    "scheme": "file",
    "type": "com.epoint.epointtbtool.zgdxnzf",
    "linkFeature": "FileOpen"
  },
  {
    "scheme": "file",
    "type": "com.epoint.epointtbtool.zgdxncf",
    "linkFeature": "FileOpen"
  },
  {
    "scheme": "file",
    "type": "com.epoint.epointtbtool.zgdxnzs",
    "linkFeature": "FileOpen"
  },
  {
    "scheme": "file",
    "type": "com.epoint.epointtbtool.zgdxncs",
    "linkFeature": "FileOpen"
  },
  {
    "scheme": "file",
    "type": "com.epoint.epointtbtool.etbp",
    "linkFeature": "FileOpen"
  },
  {
    "scheme": "file",
    "type": "com.epoint.epointtbtool.nzgdxntf",
    "linkFeature": "FileOpen"
  }
]

现在可以通过点击文件打开应用了,但是没找到怎么更改被关联文件的图标


更多关于HarmonyOS鸿蒙Next可以实现文件关联,那可以设置被关联文件的图标吗的实战教程也可以访问 https://www.itying.com/category-93-b0.html

9 回复

开发者你好,麻烦详细描述一下您这边的问题场景。

1、您问题中的“文件关联”是指文件打开方式吗;请具体描述该问题场景;

2、被关联文件的图标是指哪些的文件。

更多关于HarmonyOS鸿蒙Next可以实现文件关联,那可以设置被关联文件的图标吗的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


是的是的,我是自定义后缀的文件关联我的应用,现在可以通过双击文件打开我的应用,不过这个被关联的文件在资源管理器上面显示的还是默认的未知图标

1、开发者你好,麻烦这边需要确认下具体的场景:被关联的文件是绑定应用图标,还是不同后缀自定义不同图标。

2、辛苦再补充下下面的需求信息:

请问您是在什么样的业务场景中使用该能力,交互流程是怎样的,在哪一个环节遇到了问题?方便说明能力不满足可能带来的影响:什么时间用到?是否高频?有无三方库可以做到?若提供该能力,是否会造成大工作量返工?请您注意提供的内容不要包含您或第三方的非公开信息,如给您带来不便,敬请谅解。

HarmonyOS的分布式文件系统让我在多设备间共享文件变得更加方便。

自定义后缀的文件可以设置不同的文件图标,具体案例:在招投标文件中我们会根据不同的文件后缀划分不同作用的文件,如ZF,CF,TF等等后缀,每个后缀需要自定义其文件的图标,可以让用户从文件图标清晰的看出这些文件是干什么用的

咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎,咕咕嘎嘎。

提交工单吧,

可以。HarmonyOS NEXT支持自定义被关联文件的图标。开发者需要在应用的配置文件中声明文件关联,并通过资源文件指定图标。图标资源需放置在项目的resources目录下,并在配置中引用其资源ID。系统会根据配置,在文件管理器中显示指定的自定义图标。

可以。在HarmonyOS Next中,您可以通过在应用的配置文件中声明 fileTypeIcon 字段来为关联的文件类型设置自定义图标。

具体方法是在 module.json5 文件的 extensionAbilities 节点下,为对应的 FileOpen 类型的 ExtensionAbility 配置 metaData。在 metaData 中,使用 customizeData 数组来定义图标。

关键步骤如下:

  1. 定位配置位置:在您已有的 uris 配置所在的同一个 skillsExtensionAbility 节点下(通常是 EntryTypefileExtensionAbility),找到或添加 metaData 字段。
  2. 添加图标配置:在 metaData.customizeData 数组中,为每个需要自定义图标的文件类型(对应 uris 中的 type)添加一个对象。该对象需要包含:
    • name: 固定为 "fileTypeIcon"
    • value: 填写图标的资源索引路径。例如:"$media:ic_file_xxx"
    • extra: 填写对应的文件 MIME 类型或后缀,与 uris 中声明的 type 相匹配。例如:"com.epoint.epointtbtool.zgdxnzf"

配置示例片段:

{
  "extensionAbilities": [
    {
      "name": "FileOpenExtAbility",
      "srcEntry": "./ets/fileopenability/FileOpenExtAbility.ets",
      "type": "file",
      "exported": true,
      "metadata": [
        {
          "name": "ohos.extension.file",
          "resource": "$profile:file_open"
        }
      ],
      "skills": [
        {
          "actions": [
            "ohos.want.action.openFile"
          ],
          "uris": [
            {
              "scheme": "file",
              "type": "com.epoint.epointtbtool.zgdxnzf",
              "linkFeature": "FileOpen"
            }
            // ... 其他文件类型
          ]
        }
      ],
      "metaData": {
        "customizeData": [
          {
            "name": "fileTypeIcon",
            "value": "$media:ic_zgdxnzf",
            "extra": "com.epoint.epointtbtool.zgdxnzf"
          }
          // ... 为其他文件类型添加对应的图标配置
        ]
      }
    }
  ]
}
  1. 准备图标资源:将设计好的图标文件(建议使用.svg格式)放置在项目的 resources/base/media/ 目录下,并在 resources/base/media/ 目录下的 resource 文件中定义资源索引。

完成以上配置并编译安装应用后,系统文件管理器中等关联的相应类型文件便会显示您所设置的自定义图标。

回到顶部