【鸿蒙二开】WPS 旧 SDK 迁统一版清单
鸿蒙工程接 WPS Open SDK 时,旧包往往已经能打开文档,但 HAR 批次、凭据、注册门禁和 Token 挂载位置可能仍停在旧约定。统一版对外仍是 WPSApi,迁移重点是对齐交付与初始化,而不是重写业务页。本文按社区交流帖压缩成清单,方便直接对照联调。
先对齐这四件事
事项 | 做法 |
依赖 | 新 wps_sdk.har 放入 libs/,ohpm install |
身份 | Bundle 与 appKey/appSecret 同源,勿混用批次 |
注册 | registerApp 得 ResultCode.OK 后再 sendRequest |
Token | ToB 在回调里 setWpsFileToken;ToC 可跳过 |
官方文档:https://365.kdocs.cn/l/clQl5cek2NoT
最小代码
WPSApi.registerApp(APP_KEY, APP_SECRET, {
onCallback: (r) => {
if (r.code !== ResultCode.OK) {
console.error(r.code, r.msg);
return;
}
if (!SdkConstants.isPersonalSdk()) {
WPSApi.setWpsFileToken(PRO_SN);
}
// ready 后再 sendRequest
},
});打开侧:
const req = new OpenFileRequest(ctx, sandboxPath);
req.enableEdit = true; // 需要编辑时显式设置
// 不要再写 req.wpsToken
await WPSApi.sendRequest(req);未注册成功就打开,Promise 会抛异常——和「打开返回非 OK」分开记日志。系统选择器路径先拷贝到应用沙箱,再传给 OpenFileRequest。
回归别漏这些
冷启动看到注册 OK
沙箱路径能打开样例文档
只读 / 可编辑各验一次(可编辑必须 enableEdit = true)
ToB 确认已调用 setWpsFileToken;全仓搜掉 request.wpsToken
回传开启时,关窗后把临时 URI/FD 拷贝到本应用沙箱
出现 1013 时先对 Bundle、凭据、HAR 批次,再改业务参数
调试包与正式包 Bundle 不同,必须分开申请或明确以哪套为准。限时凭据过期走官方渠道续期,不要用反复重试掩盖身份问题。
提问请带这些
Bundle(运行时打印值)
HAR 交付日 / ToB 或 ToC
registerApp 的 code / msg
sendRequest 结果或异常栈
是否已 setWpsFileToken(ToB)
已读文档哪一节仍无法解释
邮箱:m_open_sdk@wps.cn。完整 secret 不要发到群里。材料齐了再进交流渠道,比只说「迁完打不开」高效得多。
迁移时常见误判
把「客户端未安装对应 WPS」当成 SDK 坏了;把「默认只读」当成不能编辑;把「回传临时 URI 未拷贝」当成打开失败;把「参数在当前交付不生效」当成开关 Bug。这四类用文档参数表和日志分流就能拆开。迁移评审时要求至少附:新 HAR 文件名、Bundle 打印值、一次 registerApp OK 日志、一次成功打开日志。有了这四项,群里或邮件协助可以少问两轮。
小结
统一版价值是一套 API 覆盖专业版与个人版交付;迁移成本主要在工程卫生:HAR/凭据同源、注册门禁、Token 全局化、打开参数重测。把清单贴进评审,业务打开页大多可以复用。遇到偶发 1013,优先对齐 Bundle 与申请材料;能注册不能打开时,先查就绪态与沙箱路径。社区里把迁移前后 HAR 文件名和一次成功日志一并贴出,远程协助会快很多。
官方对接文档:https://365.kdocs.cn/l/clQl5cek2NoT
技术支持邮箱:m_open_sdk@wps.cn
技术交流 QQ 群:628436767