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

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

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.kler.cn/a/582940.html

相关文章:

  • 计算机网络——DHCP
  • 蓝桥杯软件比赛_蓝桥杯软件比赛:软考前的实战演练场
  • 编写Dockerfile制作Redis镜像,生成镜像名为redis:v1.1,并推送到私有仓库。
  • 面试之《vue keep-alive原理》
  • Redis存数据就像存钱:RDB定期存款 vs AOF实时记账
  • 《HTML视觉大框架:构建现代网页设计的基石》
  • JVM内存结构笔记04-字符串常量池
  • CentOS 7系统初始化及虚拟化环境搭建手册
  • 基于django+vue的购物商城系统
  • 05.基于 TCP 的远程计算器:从协议设计到高并发实现
  • 图解AUTOSAR_CP_TcpIp
  • 1.数据清洗与预处理——Python数据挖掘(数据抽样、数据分割、异常值处理、缺失值处理)
  • 每天一道算法题【蓝桥杯】【下降路径最小和】
  • [多线程]基于阻塞队列(Blocking Queue)的生产消费者模型的实现
  • FPGA学习(三)——LED流水灯
  • 大数据实时分析:ClickHouse、Doris、TiDB 对比分析
  • 交通工具驱动电机技术解析:电瓶车、汽车、地铁与高铁的电机对比
  • 达梦数据库-学习-10-SQL 注入 HINT 规则(固定执行计划)
  • Redis Sentinel (哨兵模式)深度解析:构建高可用分布式缓存系统的核心机制
  • AI+Mermaid 制作流程图