接入宿主壳原生剪贴板复制路径

H5 复制服务在 native_app 中优先调用 clipboard.writeText

保留浏览器 Clipboard API 与 legacy selection copy 回退路径

补充 HostBridge 剪贴板测试和宿主壳能力文档
This commit is contained in:
2026-06-17 23:40:57 +08:00
parent eb9981e67d
commit b03c910f49
7 changed files with 110 additions and 4 deletions

View File

@@ -61,6 +61,10 @@ export type HostShareGridRequest = {
export type HostFileExportTextRequest = FileExportTextPayload;
export type HostClipboardWriteTextRequest = {
text: string;
};
function isUnsupportedHostBridgeError(error: unknown) {
return (
error instanceof Error &&
@@ -449,6 +453,20 @@ export async function getNativeAppHostRuntime() {
);
}
export async function writeHostClipboardText({
text,
}: HostClipboardWriteTextRequest) {
if (getHostRuntime().kind !== 'native_app') {
return false;
}
try {
return await requestNativeHostBoolean('clipboard.writeText', { text });
} catch {
return false;
}
}
export async function exportHostTextFile(
params: HostFileExportTextRequest,
) {