下载SDK

通过相关链接打开即可[解锁WPS二次开发新世界](https://bbs.wps.cn/topic/19205),邮件发送到邮箱后,很快就会收到SDK包,官方建议是说直接加群更方便,现在贴出两个方式:

第一种:

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

第二种:

WPS SDK接入流程体验_WPS

导入项目使用

  • 导入SDK

新建libs目录,将aar导入

WPS SDK接入流程体验_WPS二次开发_02

build.gradle中导入aar

implementation fileTree(include: ['*.jar', '*.aar'], dir:'libs')
  • 初始化

新建Application,并在Application中插入初始化代码

public class MyApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        SdkConfig config = new SdkConfig.Builder()
                //开启日志开关
                .setEnableDebug(BuildConfig.DEBUG)
                .build();
        //初始化
        WpsSdk.getInstance().init(this,  config, new ResultCallback() {
            @Override
            public 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();
                }
            }
        });
    }
}
  • 调用接口打开文档

获取文档Uri地址,将地址通过FileApi传递到WPS。Uri不知道怎么转换的话,可以通过FileProvider转换

Uri fileUri; // Android 7.0(包含)之后使用FileProvider,之前使用file协议
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
// File转化为FileProvider类型的Uri,对应FileProvider名字必须AndroidManifest.xml中定义匹配
  fileUri = FileProvider.getUriForFile(context, getPackageName() + ".fileprovider", new File(filePath));
} else{
    fileUri = Uri.fromFile(filePath);
}
FileApi fileApi = WpsSdk.getInstance().getService(FileApi.class);
if (FileApi != null) {
    fileApi.openFile(context, fileUri);
}
  • 编辑保存后回传状态监听
FileApi fileApi = WpsSdk.getInstance().getApi(FileApi.class);
if (fileApi != null) {
    fileApi.addEventListener(SingleOpenActivity.this, ApiEvent.DocumentAfterSave, new EventListener() {
        @Override
        public void onEvent(String s, Bundle bundle) {
            String path = bundle.getString("CurrentPath");
            Uri currentFileUri = bundle.getParcelable("CurrentFileUri");
            Log.d("WpsSdk", "demo onEvent DocumentAfterSave : s=" + s + " bundle=" + bundle + " path=" + path+ " currentFileUri="+currentFileUri);
            Utils.showToast(SingleOpenActivity.this, "文档保持路径:" + currentFileUri);
        }
    });
}

至此,初步的打开文档,编辑后的监听就完成了,是不是很简单~搞起搞起!