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

相关推荐
ZXLyyds1003 分钟前
新手也能看懂的Java泛型!一文为你全面理解Java泛型及其应用
java
添乱8 分钟前
「Java教案」数据类型、变量与常量
java
洛小豆18 分钟前
她问我:JWT里到底能塞多少东西?我说我不知道……
前端·后端·spring
都叫我大帅哥19 分钟前
Java的synchronized:深入底层,解锁高阶玩法
java
EQ-雪梨蛋花汤19 分钟前
【Android笔记】记一次 CMake 构建 Filament Android 库的完整排错过程(安卓交叉编译、CMake、Ninja)
android·c++·filament
南棱笑笑生22 分钟前
2025030给荣品PRO-RK3566开发板单独升级Android13的boot.img
linux·运维·前端
Hubert_xx31 分钟前
SQL正则表达式总结
前端·sql·正则表达式
汪子熙39 分钟前
Angular 与 rxjs 中 take(1) 的运用解析
前端·javascript·面试
伤输40 分钟前
b. 组合数
java·开发语言·算法
tangweiguo030519871 小时前
Android全局网络监控最佳实践(Kotlin实现)
android·kotlin