鸿蒙Next中如何在app内使用WPS打开文件

在鸿蒙Next系统中,如何在自己的App内调用WPS来打开文件?具体需要集成哪些SDK或API?有没有详细的代码示例可以参考?另外,这种方式是否支持常见的文件格式如doc、xls、ppt等?

2 回复

在鸿蒙Next中,调用WPS打开文件就像喊朋友帮忙开门一样简单!用wantAgent启动WPS的OpenFile ability,把文件URI传过去就行。记得先在配置文件中声明WPS的权限哦~代码写两行,WPS帮你忙!

更多关于鸿蒙Next中如何在app内使用WPS打开文件的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在鸿蒙Next中,可以通过Want和系统能力调用WPS打开文件。以下是具体步骤和示例代码:

  1. 获取文件URI
    确保文件已下载到应用沙箱或公共目录,获取文件的URI(如:internal://app/files/document.docx)。

  2. 构造Want对象
    使用Want指定WPS的Action和文件URI:

    import { BusinessError } from '[@ohos](/user/ohos).base';
    import common from '[@ohos](/user/ohos).app.ability.common';
    
    let context: common.UIAbilityContext = ...; // 获取Ability上下文
    let fileUri: string = "internal://app/files/sample.docx"; // 替换为实际URI
    
    let want = {
      action: 'ohos.want.action.VIEW',
      uri: fileUri,
      type: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document' // 根据文件类型调整
    };
    
  3. 启动WPS
    调用startAbility打开文件:

    try {
      await context.startAbility(want);
    } catch (error) {
      console.error('启动WPS失败:', (error as BusinessError).message);
    }
    

注意事项

  • 确保设备已安装WPS应用。
  • 文件类型需与type字段匹配(如DOCX、XLSX等)。
  • 若文件在沙箱内,需通过FileManager分享临时权限。

完整示例可参考鸿蒙官方文档中Want的使用文件URI管理

回到顶部