uniapp harmonyos 文件如何将uniapp程序显示在‘其他应用列表’

在HarmonyOS上运行uniapp开发的应用时,如何让应用出现在系统的"其他应用列表"中?目前应用安装后只能在桌面看到图标,但需要在分享或文件管理时让应用出现在其他应用列表中以便调用。请问需要配置什么权限或修改哪些设置才能实现?

2 回复

在HarmonyOS中,将UniApp应用显示在“其他应用列表”需修改config.json文件。在module字段中添加supportedModes属性,并设置值为["split"]。示例如下:

"module": {
  "supportedModes": ["split"]
}

保存后重新打包即可。


在 UniApp 中,要让应用显示在 HarmonyOS(或 Android)的“其他应用列表”(通常指系统分享菜单或应用选择器),需要配置意图过滤器(Intent Filter),以声明应用能处理的特定操作或数据类型。以下是实现步骤:

1. 配置 manifest.json 文件

在 UniApp 项目的 manifest.json 中,添加 intent-filter 配置(针对 Android 平台,HarmonyOS 目前兼容 Android 生态)。示例:让应用支持打开文本类型文件。

代码示例:

{
  "app-plus": {
    "distribute": {
      "android": {
        "intentFilters": [
          {
            "action": "android.intent.action.VIEW",
            "category": ["android.intent.category.DEFAULT", "android.intent.category.BROWSABLE"],
            "data": [
              {
                "mimeType": "text/plain"
              }
            ]
          }
        ]
      }
    }
  }
}

2. 参数说明

  • action: 定义操作类型(如 VIEW 表示查看数据)。
  • category: 设置类别(DEFAULTBROWSABLE 确保应用可被系统识别)。
  • data: 指定支持的 MIME 类型或文件格式(如 text/plainimage/* 等)。

3. 扩展场景

若需支持更多类型(如图片、PDF),可添加多个 data 项:

"data": [
  { "mimeType": "image/*" },
  { "mimeType": "application/pdf" }
]

4. 注意事项

  • HarmonyOS 兼容性:HarmonyOS 目前沿用 Android 的配置方式,但需确保鸿蒙设备支持相关功能。
  • 测试验证:打包后安装应用,在系统分享菜单或文件管理器中尝试分享文件,检查应用是否出现在列表中。
  • 权限问题:若涉及文件访问,需在 manifest.json 中声明存储权限(如 <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />)。

通过以上配置,应用即可在“其他应用列表”中显示。

回到顶部