接入宿主壳原生剪贴板复制路径
H5 复制服务在 native_app 中优先调用 clipboard.writeText 保留浏览器 Clipboard API 与 legacy selection copy 回退路径 补充 HostBridge 剪贴板测试和宿主壳能力文档
This commit is contained in:
@@ -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,
|
||||
) {
|
||||
|
||||
Reference in New Issue
Block a user