WPS二次开发系列:打印流程大突破!Android 如何一步获取WPS内文档

前言

当前市面上几乎所有的打印软件都支持WPS/微信/QQ/钉钉的文档进行打印,但是其实现方案均为需要引导用户进入对应的app选择分享或发送到打印app进行打印,其根本原因在于打印app无法直接获取到WPS/微信/QQ/钉钉等应用内的文档列表,且由于现有的android11之后的文件架构,更是无法获取到应用私有文件目录下的文档

市面上大部分打印应用现状: 

已接入SDK的某打印应用现状:

那么如何直接获取到WPS内的文档呢?

现在借助于WPS提出的二次开发sdk,可以轻松的从任何app内选择WPS的文档进行打印,甚至可以选择WPS的云文档进行打印,相比之前的操作方案需要7-8步完成,新的获取逻辑将直接降低用户的操作至一步完成,大大降低操作繁琐导致的用户放弃操作的情况。下面先看看Demo效果吧~

效果展示

如图所示,点击按钮之后,将直接打开WPS的文档选择页,支持最近文档/云文档/本地文档三种方式,选择文件后可以直接返回到原有的app,操作无割裂感,顺滑无比,那么不废话了,直接开干!

实现步骤

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

添加依赖库

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

【金山文档】 WPS SDK集成资料申请

https://365.kdocs.cn/l/clq8BwkjL5lF

SDK初始化

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

SdkConfig config = new SdkConfig.Builder()
   //开启日志开关
      .setEnableDebug(true)
    //是否禁止弹出安装更新提示框
      .build();
//初始化
WpsSdk.getInstance().init(this,config);
调用获取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群:250325397,吹牛摸鱼嗨起来!

  • 60
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值