签名电子应用程序 shell.openItem() 失败

LtC*_*mbo 3 macos electron

我希望我的 Electron 应用程序可以使用系统默认应用程序(默认文本编辑器)打开 *.txt 文件(由我的应用程序生成)。

shell.openItem(path)用来执行它 - 它工作正常......直到我打包(mas)并签署了应用程序。我想我必须在签名时添加一些权利,但已经尝试了很多没有成功:(

有人可以帮我吗?

Aᴄʜ*_*ᴀɪʟ 7

不幸的是,Electron 禁用了shell.openItem()Mac App Store 版本中的API。从他们的签名指南

[ shell.openItem()] 将在应用程序签名以在 Mac App Store 中分发时失败。订阅#9005以获取更新。


但是,有一种变通方法可以让您拥有相同的功能:

shell.openExternal('file://' + myFilePath);
Run Code Online (Sandbox Code Playgroud)

这种方法也被确认通过了 Apple Store 评测(见这里)。