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

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

目录

[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 文档保存完成事件回调

java 复制代码
//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 文档关闭完成事件回调

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

相关推荐
毕设源码-朱学姐4 小时前
【开题答辩全过程】以 工厂能耗分析平台的设计与实现为例,包含答辩的问题和答案
java·vue.js
一笑的小酒馆5 小时前
Android launcher3实现简单的负一屏功能
android
xuyin12045 小时前
【Android】Flow基础知识和使用
android
Spring AI学习6 小时前
Spring AI深度解析(9/50):可观测性与监控体系实战
java·人工智能·spring
天天扭码6 小时前
如何实现流式输出?一篇文章手把手教你!
前端·aigc·ai编程
前端 贾公子6 小时前
vue移动端适配方案 === postcss-px-to-viewport
前端·javascript·html
李新_6 小时前
基于Markwon封装Markdown组件
android·aigc·markdown
java1234_小锋6 小时前
Spring IoC的实现机制是什么?
java·后端·spring
xqqxqxxq7 小时前
背单词软件技术笔记(V2.0扩展版)
java·笔记·python
GISer_Jing7 小时前
AI营销增长:4大核心能力+前端落地指南
前端·javascript·人工智能