WPS二次开发专题:WPS SDK事件回调

作者持续关注 WPS二次开发专题系列,持续为大家带来更多有价值的WPS开发技术细节,如果能够帮助到您,请帮忙来个一键三连,更多问题请联系我(QQ:250325397)

目录

[1.什么是WPS SDK事件回调:](#1.什么是WPS SDK事件回调:)

[2.WPS SDK 事件回调类型](#2.WPS SDK 事件回调类型)

3.通用事件回调

[4. 使用参考:](#4. 使用参考:)

[4.1 文档保存完成事件回调](#4.1 文档保存完成事件回调)

[4.2 文档关闭完成事件回调](#4.2 文档关闭完成事件回调)

[4.3 通用事件通知使用注意事项](#4.3 通用事件通知使用注意事项)

5、文档对象事件回调


1.什么是WPS SDK事件回调:

第三方应用通过注册SDK事件回调接口后能够收到WPS应用程序传递给第三方应用的状态信息通知,同时结合自己的需求就可以实现需求闭环。

2.WPS SDK 事件回调类型

WPS 事件回调分成两种:

3.通用事件回调

通用事件回调由基础文档服务接口(FileApi)提供,支持Android全端(个人版,专业版)

通用事件列表

|---------------------|---------------|-------------|----------|-------------|
| 事件名称 | 平台 | 级别 | 事件类型 | 说明 |
| DocumentAfterSave | Android WPS全端 | Application | 通知型 | 当文档保存结束后被触发 |
| DocumentAfterClose | Android WPS全端 | Application | 通知型 | 当文档关闭结束后被触发 |

详细事件参考:ApiEvent

4. 使用参考:

4.1 文档保存完成事件回调

复制代码
//1.获取FileApi服务
FileApi fileApi = WpsSdk.getInstance().getApi(FileApi.class);
// 2. 添加事件监听, 注意添加事件要在调用打开文档接口之前调用if (fileApi != null) {
   fileApi.addEventListener(DemoAtvity.this, ApiEvent.DocumentAfterSave, new EventListener() {
              @OverridepublicvoidonEvent(String s, Bundle bundle){
                  Log.d("WpsSdk", "demo onEvent: s=" + s + " bundle=" + bundle);
              }
          });
    //3. 调用打开文档接口           
   fileApi.openFile(XXXAtvity.this, fileUri, bundle);
 }

4.2 文档关闭完成事件回调

复制代码
FileApi fileApi = WpsSdk.getInstance().getApi(FileApi.class);
if (fileApi != null) {
    fileApi.addEventListener(SingleOpenActivity.this, ApiEvent.DocumentAfterClose, new EventListener() {
        @Override
        public void onEvent(String s, Bundle bundle) {
            String path = bundle.getString("CurrentPath");
            Log.d("WpsSdk", "demo onEvent DocumentAfterClose : s=" + s + " bundle=" + bundle + " path=" + path);
        }
    });
    fileApi.openFile(this, fieUri, bundle);
}

4.3 通用事件通知使用注意事项

  • 注册事件需要再调用 fileApi.openFile(xx)方法之前使用
  • 通用事件仅支持文档文档打开后的事件通知

5、文档对象事件回调

这个是高阶能力,主要针对WPS专业版,个人版不支持,这里暂不详细介绍

相关推荐
怎么比啊都是大神18 分钟前
关于==null、isEmpty()和StrUtil.isBlank()
java
唐青枫20 分钟前
Java Neo4j 实战指南:从图模型、Cypher 到 Spring Boot 关系查询
java
观远数据26 分钟前
从离线开发到实时同步:DataFlow如何支撑企业级数据治理闭环
java·windows·microsoft·excel
今天AI了吗1 小时前
Hermes Agent 搭建全流程:从本机试跑到可持续运行的个人 AI Agent
java·人工智能·python·学习·embedding
春卷同学2 小时前
032-关系型数据库在记账应用中的建模与查询优化
java·jvm·数据库
不平衡的叉叉树2 小时前
Springboot+Mockito简单使用单元测试
java·spring boot·单元测试
空中湖2 小时前
Spring AI 多模型接入实战:OpenAI、Ollama、通义千问切换只需改配置
java·人工智能·spring
tianyatest2 小时前
表格分类统计及排序
java·excel·暖通
万亿少女的梦1682 小时前
基于Spring Boot与MySQL的乡镇群众服务系统设计与实现
java·spring boot·mysql·权限管理·前后端分离
thefool1122663 小时前
Java 面向对象
java