【鸿蒙二开】WPS Open SDK 快速接入清单
准备接鸿蒙 WPS Open SDK、想半天跑通「打开文档」的同学,可以按本帖最短清单走。按对接文档,API 是一套:WPSApi + OpenFileRequest。专业版(ToB)与个人版(ToC)差异落在 HAR / 凭据与是否 setWpsFileToken,不要为此复制两套打开代码;先把只读与可编辑跑绿,再谈策略字段落地。
四步闭环
libs/wps_sdk.har → ohpm install
registerApp 等到 ResultCode.OK
文件拷到应用沙箱
OpenFileRequest + sendRequest(先只读,再 enableEdit)
WPSApi.registerApp(APP_KEY, APP_SECRET, {
onCallback: (result: Result): void => {
if (result.code !== ResultCode.OK) {
console.error(result.code, result.msg);
return;
}
if (!SdkConstants.isPersonalSdk()) {
WPSApi.setWpsFileToken(PRO_SN);
}
}
});未注册成功就 sendRequest 会抛异常。个人版通常无需序列号;专业版建议在成功回调里一次 setWpsFileToken,别每次打开塞 wpsToken。凭据与包名绑定,换 HAR 或换包名后 clean,再验正式包是否 1013。
打开怎么写
async function openDoc(
ctx: UIAbilityContext,
src: string,
editable: boolean
): Promise<Result> {
await prepareWps();
const path = copyToSandbox(ctx, src);
const req = new OpenFileRequest(ctx, path);
req.enableEdit = editable;
return WPSApi.sendRequest(req);
}路径先落沙箱。联调顺序:注册 → 只读 → 可编辑 → 再叠水印 / extraOptions / 回传。一次堆满开关,ResultCode.ERROR 很难归因。extraOptions 仅显式赋值生效。
上手检查表
全仓是否只有一处 new OpenFileRequest
是否还残留逐次 request.wpsToken
Release 是否打印完整 secret
正式包包名与申请凭据是否一致
真机是否验过只读与可编辑
建议把上面五条写进 PR 模板。多人并行接入时,冻结平行 Helper,统一走 Facade。快速接入解决的是「能打开」;后续策略与回传仍按入口语义扩展同一函数。字段语义以官方对接文档为准。路径务必先落到沙箱;外部 URI 权限不足时常见泛化 ERROR。换 HAR 后务必 clean。新人上手时,先画清调用链再对照文档核对字段,比直接复制 Demo 更稳。本帖仅作社区交流备忘,细节以官方文档与当前 HAR 说明为准。
真机联调时建议固定日志:code、msg、是否已注册、路径是否沙箱、是否可编辑。调试包正常、正式包 1013,优先查正式包包名与申请凭据是否一致,而不是先改业务字段。换 HAR 后务必 clean。extraOptions 只对显式赋值的字段生效;未赋值不要假设默认全关。可编辑与回传按入口语义组合,不要在复制粘贴中写死「编辑=回传」。快速接入阶段先别一次写满水印、菜单与落地相关字段,等只读与可编辑都绿了再叠。把「全仓只有一处 OpenFileRequest」写进 PR 模板,比口头说「已经统一了」更可靠。新人上手时,先画清调用链再对照对接文档核对字段,比直接复制 Demo 更稳。本帖继续补充:预览与编辑入口共用同一函数,可避免字段漂移;需要关窗结果时再开 wpsTransferType。字段语义以官方对接文档为准,随 SDK 版本核对。
真机联调时建议固定日志:code、msg、是否已注册、路径是否沙箱、是否可编辑。调试包正常、正式包 1013,优先查正式包包名与申请凭据是否一致,而不是先改业务字段。换 HAR 后务必 clean。extraOptions 只对显式赋值的字段生效;未赋值不要假设默认全关。可编辑与回传按入口语义组合,不要在复制粘贴中写死「编辑=回传」。快速接入阶段先别一次写满水印、菜单与落地相关字段,等只读与可编辑都绿了再叠。把「全仓只有一处 OpenFileRequest」写进 PR 模板,比口头说「已经统一了」更可靠。新人上手时,先画清调用链再对照对接文档核对字段,比直接复制 Demo 更稳。预览与编辑入口共用同一函数,可避免字段漂移;需要关窗结果时再开 wpsTransferType。字段语义以官方对接文档为准,随 SDK 版本核对。
小结与获取 SDK
鸿蒙侧把快速接入压成一条主线:装 HAR → 注册成功 → 沙箱打开。统一版让专业版与个人版共用同一套接口学习成本;差异收在适配层即可。
更多参数见官方对接文档:https://365.kdocs.cn/l/clQl5cek2NoT
申请 SDK HAR 与凭据:m_open_sdk@wps.cn(注明包名与专业版/个人版需求)。
技术交流 QQ 群:628436767