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

WPS二次开发系列:WPS SDK初始化

   作者持续关注WPS二次开发专题系列,持续为大家带来更多有价值的WPS开发技术细节,如果能够帮助到您,请帮忙来个一键三连,更多问题请联系我(QQ:250325397)

本文将详细介绍WPS SDK初始化,帮您能够更好的在项目中接入WPS SDK实现自己的应用和WPS应用进行通信交互。

1.集成前的准备

1.1申请集成资料:

向WPS官方发送邮件申请,邮件格式如下

邮件模板:
发起人:有需要申请接入WPS移动端的企业或者个人
邮件主题: XXX公司XXX项目---WPS Android端 SDK二次开发集成申请
邮件发送: m_open_sdk@wps.cn
邮件内容
请明确包含申请项目背景规模、集成应用第三方APP包名、 具体需求 集成周期等

以上面格式发送邮件申请后,WPS方审核通过后会以邮件回复的相关集成资料(SDK&Demo&集成文档)

2.开始集成

2.1 环境配置

在自己项目工程中导入wps-sdk依赖库(wps_sdk.aar)

  • 将wps-sdk-xxx.aar 拷贝到项目中的libs目录下
  • 在项目build.gradle中添加
dependencies {implementation fileTree(include: ['*.jar', '*.aar'], dir:'libs')//或者//    implementation files("/libs/wps-sdk-xxx.aar").....
}

2.2 SDK初始化

在第三方应用Application中的onCreate方法中调用

调用 WpsSdk.getInstance().init(…)进行初始化

参考示例代码:

public class MyApplication extends Application {@Overridepublic void onCreate() {super.onCreate();SdkConfig config = new SdkConfig.Builder()//开启日志开关.setEnableDebug(BuildConfig.DEBUG)
//                .setWpsPackageName("cn.wps.moffice_i18n_TV") //传入WPS的包名,比如需要调用TV版等,默认调用WPS版本不需要设置.build();//初始化WpsSdk.getInstance().init(this,  config, new ResultCallback() {@Overridepublic void onCallback(Result result) {if (result.code == 0){Toast.makeText(MyApplication.this, "WPS SDK初始成功", Toast.LENGTH_SHORT).show();}else {Toast.makeText(MyApplication.this, "初始化失败:"+result, Toast.LENGTH_SHORT).show();}}});}
}

2.3 初始化注意事项说明

2.3.1 SDK初始化代码的调用位置?

  • SDK的初始化建议在自己应用MyApplication的onCreate方法中进行,如上文示例代码
  • 如果自己的是多进程架构的,需要注意SDK的初始化和后续SDK调用API保持同一个进程

2.3.2 SDK初始代码形式

2.3.2.1简单默认形式,默认使用WPS个人版
public class MyApplication extends Application {@Overridepublic void onCreate() {super.onCreate();WpsSdk.getInstance().init(this);}
}
2.3.2.2 高级形式,SDK初始化时可以进行一些配置
public class MyApplication extends Application {@Overridepublic void onCreate() {super.onCreate();SdkConfig config = new SdkConfig.Builder()//开启日志开关.setEnableDebug(BuildConfig.DEBUG)
//                .setWpsPackageName("cn.wps.moffice_i18n_TV") //传入WPS的包名,比如需要调用TV版等,默认调用WPS版本不需要设置.build();WpsSdk.getInstance().init(this,config);}
}
📌

PS: 注意可以通过setWpsPackageName来控制SDK打开的WPS版本,对于非应用市场通用的WPS版本,如WPS企业版,WPS TV版等版本,可以通过指定包名进行操作。

2.3.2.3 关注SDK初始返回值
  • 不关心初始化结果(返回值)
    • 默认配置
WpsSdk.getInstance().init(this);
  • 自定义配置
      WpsSdk.getInstance().init(this,config);
  • 关心初始化结果(返回值),通过ResulCallback回调得到初始化结果Result
//初始化
WpsSdk.getInstance().init(this,  config, new ResultCallback() {@Overridepublic void onCallback(Result result) {if (result.code == 0){Toast.makeText(MyApplication.this, "WPS SDK初始成功", Toast.LENGTH_SHORT).show();}else {Toast.makeText(MyApplication.this, "初始化失败:"+result, Toast.LENGTH_SHORT).show();}}
});

最后如果能够帮助到您,请动动发财的小手来个一键三连💪,老铁们有兴趣可以加Q群:250325397,吹牛摸鱼嗨起来!

http://www.lryc.cn/news/331303.html

相关文章:

  • EXCEL地理数据处理工具(地图任务)
  • 软件设计原则:迪米特法则
  • MongoDB聚合运算符:$max
  • 神经网络学习笔记10——RNN、ELMo、Transformer、GPT、BERT
  • Java23种设计模式
  • pieces of cake concerning torchtorchvision
  • 如何在Python中处理JSON数据?
  • 站群服务器如何提高搜索引擎排名
  • Redis安装-Docker
  • day16-二叉树part03
  • 上位机图像处理和嵌入式模块部署(qmacvisual亮度检测)
  • 防止推特Twitter账号被冻结,应该选什么代理类型IP?
  • 【二叉树】Leetcode 114. 二叉树展开为链表【中等】
  • 2024年150道高频Java面试题(二十)
  • Docker-Compose容器编排
  • nvm 安装多个版本的Node npm
  • RisingWave 在品高股份 Bingo IAM 中的应用
  • .Net Core/.Net6/.Net8 ,启动配置/Program.cs 配置
  • 尚硅谷2024最新Git企业实战教程 | Git与GitLab的企业实战
  • 2024阿里云老用户服务器优惠价格99元和199元
  • 【前端webpack5高级优化】提升打包构建速度几种优化方案
  • 【第十一届大唐杯全国大学生新一代信息通信技术大赛】赛题分析
  • Java面试题:Java集合框架:请简述Java集合框架的主要组成部分,并解释它们之间的关系。
  • hadoop3.0高可用分布式集群安装
  • Flink SQL系列之:解析Debezium数据格式时间字段常用的函数
  • Redis底层数据结构-Dict
  • Python基于深度学习的人脸识别项目源码+演示视频,利用OpenCV进行人脸检测与识别 preview
  • CTF下加载CTFtraining题库以管理员身份导入 [HCTF 2018]WarmUp,之后以参赛者身份完成解题全过程
  • 机器学习每周挑战——信用卡申请用户数据分析
  • Vulnhub:WESTWILD: 1.1