原文链接:http://bbs.wps.cn/thread-22349340-1-1.html

从V5.1版本开始,WPS移动版本提供了额外的功能,可以供第三方程序通过集成的方式调用“WPS移动版”打开文件,打开的文件保存和关闭时第三方也可接收到广播通知。
       通过此接口,开发者可以实现通过某程序打开office文档时,直接进入阅读模式,同时退出后,会将阅读进度返回给该程序,这样下次再阅读时可以从上次阅读的位置继续阅读。以下是具体接口使用说明和注意事项。

【打开文件】
  调用startActivity 打开, 具体如下:
  boolean openFile(String path)
     {
             Intent intent = new Intent();
                 Bundle bundle = new Bundle();
                 bundle.putString(OPEN_MODE, READ_ONLY);
                 bundle.putBoolean(SEND_CLOSE_BROAD, true);
                 bundle.putString(THIRD_PACKAGE, selfPackageName);
                 bundle.putBoolean(CLEAR_BUFFER, true);
                 bundle.putBoolean(CLEAR_TRACE, true);
                 //bundle.putBoolean(CLEAR_FILE, true);
                 intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
         intent.setAction(android.content.Intent.ACTION_VIEW);
                 intent.setClassName(packageName, className);
                 
                 File file = new File(path);
                 if (file == null || !file.exists())
                 {                        return false;
                 }
                 
                 Uri uri = Uri.fromFile(file);
                 intent.setData(uri);
                 intent.putExtras(bundle);
                 
                 try 
                 {
                         startActivity(intent);
                 }
                 catch (ActivityNotFoundException e) 
                 {
                         e.printStackTrace();
                         
                         return false;
                 }
                 
                 return true;
     }
其中className为“cn.wps.moffice.documentmanager.PreStartActivity2”,packageName根据版本分别为: ”cn.wps.moffice_eng”(普通版),”cn.wps.moffice_eng”(英文版)。要打开的文件通过Uri传入,其它要传入参数详见下表:

“OpenMode”目前支持以下几种方式:

【保存文件】
       文件保存时会发送一个"cn.wps.moffice.file.save"的广播,第三方程序根据需要接听广播。广播含有文件的路径信息,打开文件时传递的包名等,使用时酌情解析,具体见下表:

【关闭文件】
       文件关闭时会发送一个"cn.wps.moffice.file.close"的广播,第三方程序根据需要接听广播。广播含有文件的路径信息,打开文件时传递的包名等,使用时酌情解析,具体见下表:

具体可以参考附件的例子testThirdInterface

<ignore_js_op>

支持方式.JPG (20.75 KB, 下载次数: 1132)

<ignore_js_op>

保存文件.JPG (19.68 KB, 下载次数: 1132)

<ignore_js_op>

open file.JPG (78.29 KB, 下载次数: 916)

<ignore_js_op>

关闭文件.JPG (35.16 KB, 下载次数: 945)

<ignore_js_op>

testThirdInterface.rar

45.21 KB, 下载次数: 2296

WPS Office手机版调用接口代码指导帖之二 [复制链接]的更多相关文章

  1. WPS Office手机版调用接口代码指导帖之一(Android)

    经常会有一些喜欢开发鼓捣的童鞋问我们,WPS Office手机版是否提供调用接口,希望在android中使用一个调用命令,直接调用WPS手机版来打开指定的DOC文件,而不用弹出一个程序可选列表(如果用 ...

  2. C# 开发AliYun(阿里云) 小蜜调用接口代码

    using System; using System.Collections.Generic; using Aliyun.Acs.Core; using Aliyun.Acs.Core.Excepti ...

  3. 织梦dedecms手机版上下篇链接错误的解决方法

    打开 \include\arc.archives.class.php 1. 找到 $this->PreNext['pre'] = "上一篇:<a href='$mlink'> ...

  4. discuz手机版模板开发

    1.触屏版模板手机路径 discuz X3触屏版模板路径:/template/default/touch/forum/discuz.htm(主页面模板) discuz X3标准版模板路径:/templ ...

  5. Nginx学习总结(2)——Nginx手机版和PC电脑版网站配置

    考虑到网站的在多种设备下的兼容性,有很多网站会有手机版和电脑版两个版本.访问同一个网站URL,当服务端识别出用户使用电脑访问,就打开电脑版的页面,用户如果使用手机访问,则会得到手机版的页面. 1.判断 ...

  6. Ubuntu 14 安装 “宋体,微软雅黑,WPS Office的symbol、wingdings、wingdings 2、wingdings 3、webding字体,Consolas雅黑混合版编程字体” 等 Windows 7 下的字体

    Windows平台下,“宋体”.“微软雅黑”.“Courier New(编程字体)”用的比较多,看的也习惯了.那如何在 Ubuntu下也安装这些字体呢? 操作步骤如下: 第一步:从 Windows 7 ...

  7. Asp.Net支付宝手机网站支付接口API之C#版

    一.准备工作 1.使用企业支付宝签约手机网站支付 2.下载支付宝官方demo 文档地址:https://doc.open.alipay.com/doc2/detail?treeId=60&ar ...

  8. WPS Office 2012专业版与WPS2019政府云办公增强版下载安装与体验

    WPS Office 2012专业版与WPS2019政府云办公增强版下载安装与体验 一.WPS Office 2012专业版. 优点:没有广告,很清爽,界面很人性化.是我于2019年11月找出来安装测 ...

  9. [系统相关]WPS Office 2016 专业增强版 10.8.0.6470 免序列号无限制

    WPS Office (10.8.0.6470)  新增功能列表 ============================================= 改进功能列表 ------------ W ...

随机推荐

  1. vim技巧4 删除/保留文本中匹配行

    vim技巧:如何删除/保留文本中特定的行呢? <ol><a href="/ss/ss/www"> show invisibles</a> < ...

  2. JS 正则表达式深入

    1.零宽断言 断言指正则表达式可以指明在指定的内容前面或后面会出现满足规则的内容 零宽指的是断言只是匹配的表达式,不占据宽度,也不会出现在返回的匹配结果中 "<span class=& ...

  3. python常用库之random

    random是内建(built-in)函数,作用是产生随机数,使用较多. 1.导入模块 首先是导入模块: import random 接着就可以调用random模块下的函数了,例如: random.r ...

  4. GItHub Git 基础教程 常用命令 命令

    最近复习了一下Git的使用,简单总结了一些.以供以后查阅和大家参考. 一,安装 首先是Linux下: 打开shell ,输入 sudo apt-get install git-core 之后回车输入密 ...

  5. Jmeter接口测试实例2-获取所有学生信息

    Jmeter实例2:获取所有学生信息 添加http协议—添加IP.路径.方法,添加信息头管理器,察看结果树,运行 如下图所示,响应结果中获取到所有学生信息

  6. MyEclipse 2015 SVN 安装

    SVN的在线安装 1.打开MyEclipse,找到顶部菜单栏 Help(帮助)-Install from Site…(从网站安装),如下图 2. 点击Install from Site…后会出现让你选 ...

  7. Ubuntu远程连接MySQL(connection refused)解决方法

    一.判断ubuntu是否开启防火墙 sudo ufw status 开放防火墙3306端口 sudo ufw allow 3306 二.查看3306端口是否打开  注意:红色框框表示3306绑定的ip ...

  8. Go语言无锁队列组件的实现 (chan/interface/select)

    1. 背景 go代码中要实现异步很简单,go funcName(). 但是进程需要控制协程数量在合理范围内,对应大批量任务可以使用"协程池 + 无锁队列"实现. 2. golang ...

  9. 如何确定Isilon里的磁盘是多大的?

    在不知道节点任何信息的情况下,可以使用下面的方法来确定磁盘的大小. 1. 使用命令"sysctl efs.gmp.infos | less",能得到cluster的所有节点以及所有 ...

  10. java利用Tesseract 识别身份证号码

    安装Tesseract http://blog.csdn.net/hiredme/article/details/50894814 http://blog.csdn.net/yoara/article ...