apidialog
saveFile
查看 Markdown打开系统保存选择器,并返回可写入的虚拟文件句柄。
打开系统保存选择器,并返回可写入的虚拟文件句柄。
KSM.dialog.saveFile(args?: {
suggestedName?: string;
}): Promise<{ file: string | null }>| Windows | Android | 权限 |
|---|---|---|
| 支持 | 支持 | dialog |
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
suggestedName | string | 否 | 保存对话框中的建议文件名 |
| 字段 | 类型 | 说明 |
|---|---|---|
file | string | null | 成功时是 app://picked/<id>,取消时为 null |
GetSaveFileNameW,启用覆盖确认。ACTION_CREATE_DOCUMENT,把建议名放入 EXTRA_TITLE。{ file: null }。{ file: null };前端总线默认 10 秒
先以 TIMEOUT拒绝。fs.writeText() 或 fs.remove()。All Files 过滤。const saved = await KSM.dialog.saveFile({
suggestedName: 'settings.json'
});
if (!saved.file) {
return;
}
await KSM.fs.writeText({
path: saved.file,
content: JSON.stringify({ ready: true })
});| 错误 | 场景 |
|---|---|
普通 TypeError | suggestedName 不是字符串 |
PERMISSION_DENIED | dialog 权限不可用 |
NOT_SUPPORTED | 宿主没有配置保存服务 |
TIMEOUT | 请求超过桥接层 10 秒超时 |
评论