WPS二次开发系列:Android 第三方应用如何获取WPS端内文档

devtools/2025/3/14 2:09:07/

1.需求场景

在项目开发中碰到这种情况,我们需要利用WPS的文档管理能力,比如需要调用WPS的文件选择器,来选择文档,同时需要得到WPS选择的文档结果返回给我们的应用。之前在网上找到了很久都没有找到WPS移动端有相关的API接口文档和解决方案,最近在逛WPS社区论坛的时看到了有一个WPS SDK相关介绍,经过申请SDK后一系列体验终于完美解决了问题。

2、效果展示

在这里插入图片描述

3、具体实现步骤

通过WPS社区文章: 解锁WPS二次开发新世界:Android开发用户专属极速接入秘籍!获取相关WPS-SDK集成资料,然后一步步实现完成,先将如何获取WPS端内文档详细步骤总结如下:

3.1目标:获取WPS端内文件
3.2 实现步骤:
3.2.1添加依赖库

将WPS提供集成资源压缩包里面libs相关的aar文件集成到自己的工程中
具体申请方式,参考:
链接: WPS SDK集成资料申请

3.2.2.SDK初始化

在自己工程Application的onCreate方法中调用SDK的初始化Api, 参考如下

SdkConfig config = new SdkConfig.Builder()//开启日志开关.setEnableDebug(true)//是否禁止弹出安装更新提示框.build();
//初始化
WpsSdk.getInstance().init(this,config);
3.3.3.调用获取WPS端内文件功能接口

调用相关API接口,调起WPS文件选择器
参考如下:

 FileManagerApi fileManagerApi = WpsSdk.getInstance().getApi(FileManagerApi.class);if (fileManagerApi != null) {fileManagerApi.selectFiles(MainActivity.this, new ResultCallback<Uri>() {@OverridepublicvoidonCallback(Result<Uri> result){if (result.code == 0) {Uri fileUri = result.data;Log.d("WpsSdkLog", "MainActivity selectFiles onCallback 转换输出路径:fileUri=" + fileUri);//从WPS路径拷贝到第三方应用路径//                        String outFile = FileUtil.copyFileFromUri(MainActivity.this, fileUri, "output");//                        Log.d("WpsSdkLog", "MainActivity selectFiles onCallback: outFile=" + outFile);Toast.makeText(MainActivity.this, " 选择的文件路径:" + fileUri, Toast.LENGTH_SHORT).show();} else {Toast.makeText(MainActivity.this, " 出现异常:" + result.msg, Toast.LENGTH_SHORT).show();}}});}

PS: 详细可参考 WpsSdkDemo工程 中MainActivity中的selectWpsFiles方法
至此,如何实现在自己的应用中集成WPS-SDK调用WPS文档选择器的功能完成,是不是超级简单,如果能够帮助到您,请动动发财的小手来个一键三连💪,老铁们有兴趣可以加Q群:628436767,吹牛摸鱼嗨起来!


http://www.ppmy.cn/devtools/166914.html

相关文章

接口自动化入门 —— Jmeter实现在接口工具中关联接口处理方案

1. JMeter 接口关联处理的核心概念 接口关联是指在多个接口请求之间共享数据&#xff0c;例如将一个接口的返回值作为另一个接口的输入参数。常见的场景包括&#xff1a; 使用登录接口返回的 Token 作为后续接口的认证信息。 将一个接口返回的 ID 作为另一个接口的请求参数。…

【React】React + Tailwind CSS 快速入门指南

Tailwind CSS 是一个功能强大实用优先的 CSS 原子性的库&#xff0c;可以帮助你快速构建现代化的用户界面。 它支持的种类框架也非常的多&#xff01; 例如&#xff1a; Vite 、Next.js 等… 这个库给我们带来的好处就是可以给我们衍生出其他增强的体验&#xff01; 比如说 sha…

侯捷 C++ 课程学习笔记:进阶语法之lambda表达式(二)

侯捷 C 课程学习笔记&#xff1a;进阶语法之lambda表达式&#xff08;二&#xff09; 一、捕获范围界定 1. 局部变量与函数参数 ​非静态局部变量&#xff1a;Lambda 所在作用域内定义的局部变量&#xff08;如函数内部的 int x&#xff09;会被完整复制其当前值。捕获后外部变…

深度学习 常见优化器

一、基础优化器 随机梯度下降&#xff08;SGD&#xff09; • 核心&#xff1a;∇θJ(θ) η * ∇θJ(θ) • 特点&#xff1a;学习率固定&#xff0c;收敛路径震荡大 • 适用场景&#xff1a;简单凸优化问题 • 改进方向&#xff1a;动量加速 二、动量系优化器 2. SGD with…

onlyoffice 8.1.0 社区版去除20连接限制版(添加常用中文字体,解锁手机编辑连接器,包含ARM64)

onlyoffice社区版Community Server是根据GNU Affero通用公共许可证发行的ONLYOFFICE的免费下载开源版本。 但该版本限制了最大连接数量为20&#xff0c;超出之后只能预览不能编辑。并删除了移动端编辑功能。 根据AGPL许可协议&#xff0c;在遵守AGPL许可协议的前提下&#xff…

DeepSeek开启AI办公新模式,WPS/Office集成DeepSeek-R1本地大模型!

从央视到地方媒体&#xff0c;已有多家媒体机构推出AI主播&#xff0c;最近杭州文化广播电视集团的《杭州新闻联播》节目&#xff0c;使用AI主持人进行新闻播报&#xff0c;且做到了0失误率&#xff0c;可见AI正在逐渐取代部分行业和一些重复性的工作&#xff0c;这一现象引发很…

设计模式文章汇总-Golang语言实现

Golang学习笔记_27——单例模式 Golang学习笔记_28——工厂方法模式 Golang学习笔记_29——抽象工厂模式 Golang学习笔记_30——建造者模式 Golang学习笔记_31——原型模式 Golang学习笔记_32——适配器模式 Golang学习笔记_33——桥接模式 Golang学习笔记_34——组合模式 Gola…

【面试题系列】Redis 常见面试题答案

一、基础概念 1. Redis 有哪些数据结构&#xff1f;各自的应用场景是什么&#xff1f; 答案&#xff1a; Redis 支持以下数据结构&#xff1a; String&#xff1a;最基础类型&#xff0c;存储字符串、数字、二进制数据。 场景&#xff1a;缓存用户信息、计数器、分布式锁。H…