当前位置: 首页 > article >正文

WPS二次开发系列:WPS SDK事件回调

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

目录

1.什么是WPS SDK事件回调

2.WPS SDK 事件回调类型

3.通用事件回调

4. 使用参考:

4.1 文档保存完成事件回调

4.2 文档关闭完成事件回调

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

5、文档对象事件回调


1.什么是WPS SDK事件回调

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

2.WPS SDK 事件回调类型

WPS 事件回调分成两种:

  • 通用的事件回调(EventListener)
  • 文档对象的事件回调(OfficeEventListener)

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专业版,个人版不支持,这里暂不详细介绍


http://www.kler.cn/a/591483.html

相关文章:

  • Mac下查看dylib库的版本信息
  • 简单循环神经网络(RNN):原理、结构与应用
  • Deepseek API+Python测试用例一键生成与导出-V1.0.2【实现需求文档图片识别与用例生成自动化】
  • 【ES6新特性】解构赋值常见用法
  • 入门 Sui Move 开发:9. 一个 Sui dApp 前端项目
  • 数据库原理9
  • 3--网络安全架构概述
  • 【33】单片机编程核心技巧:Switch驱动跑马灯速度控制
  • MTK Android12 应用在最顶端时,禁止拉起其他某个应用(一)
  • 条纹图像生成、解码小工具
  • MATLAB 2024b深度学习新特性全面解析与DeepSeek大模型集成开发
  • Unity单例模式(c#泛型基类)
  • 个人.clang-format配置,适合Linux C/C++
  • 【AI】利用Azure AI的元数据过滤器提升 RAG 性能并增强向量搜索案例
  • 【工具/调研】各种类型文件转PDF
  • 2025年渗透测试面试题总结-某四字大厂实习面试复盘 一面 三面(题目+回答)
  • 【实战ES】实战 Elasticsearch:快速上手与深度实践-附录-3-从ES 7.x到8.x的平滑迁移策略
  • Linux (ubunut) 环境 Docker 安装Nginx 运行Vue项目
  • navicat导出文件密码解密
  • React19源码系列之createRoot的执行流程是怎么的?