签署、公证及;Stapeled ElectronJS(9.0.4)应用程序崩溃EXC_崩溃(代码签名无效)(electron builder)
我将应用程序更新为Electron(9.0.4)和Electron builder 22.8.0 我们构建并打包成一个DMG,当我打开它时,我得到了信息 签字、公证和装订正确 当我打开它时,它与消息一起崩溃 EXC_崩溃(代码签名无效) 我的electron-build.yaml为osx提供了以下代码片段签署、公证及;Stapeled ElectronJS(9.0.4)应用程序崩溃EXC_崩溃(代码签名无效)(electron builder),electron,electron-builder,xcode12,dmg,notarize,Electron,Electron Builder,Xcode12,Dmg,Notarize,我将应用程序更新为Electron(9.0.4)和Electron builder 22.8.0 我们构建并打包成一个DMG,当我打开它时,我得到了信息 签字、公证和装订正确 当我打开它时,它与消息一起崩溃 EXC_崩溃(代码签名无效) 我的electron-build.yaml为osx提供了以下代码片段 mac: identity: XXXXX (valid Developer Application from Keychain) hardenedRuntime: tr
mac:
identity: XXXXX (valid Developer Application from Keychain)
hardenedRuntime: true
gatekeeperAssess: false
target:
- target: dmg
arch:
- x64
type: distribution
icon: installer.ico
dmg:
sign: true
如果我跑
spctl -vvv --assess --type exec electron/dist/mac/xxxx.app it says
electron/dist/mac/XXXXX.app/: accepted
source=Notarized Developer ID
origin=Developer ID Application: XXXXX
如果我跑
spctl -vvv --assess --type exec electron/dist/XXXX.dmg
包装上写着
electron/dist/XXXXXX.dmg: rejected (the code is valid but does not seem to be an app)
origin=Developer ID Application: XXXXX
我总是能够在XCode之外手动签署dmg,但由于ElectronJS和electron builder的更新,我再也不能这样做了。BigSur上关于权限的消息也是新的
这是electron builder的输出
• electron-builder version=22.9.1 os=20.1.0
• loaded configuration file=/Users/XXXXXXX/Sites/klic-viewer-frontend/electron/electron-builder.yml
• writing effective config file=electron/dist/builder-effective-config.yaml
• packaging platform=darwin arch=x64 electron=9.0.4 appOutDir=electron/dist/mac
• signing file=electron/dist/mac/XXXXX.app identityName=Developer ID Application: XXXXX (valid Developer Application from Keychain) identityHash=XXXXXX provisioningProfile=none
• building target=DMG arch=x64 file=electron/dist/XXXXX.dmg
应享权利:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.app-sandbox</key>
<true/>
<key>com.apple.security.cs.allow-unsigned-executable-memory</key>
<true/>
</dict>
</plist>
com.apple.security.app-sandbox
com.apple.security.cs.allow-unsigned-executable-memory
如何修复我的应用程序,使其在没有任何崩溃的情况下再次运行
注意:当我在Big Sur上运行应用程序时,我收到一条额外的错误消息“您没有打开此应用程序的权限”,我认为这是与Big Sur相关的另一个问题?我修复了该问题。这是de-Rightments.plist I中的一个旧密钥。我删除了这个com.apple.security.app-sandbox,它成功了