我已经将应用程序打包为mas文件,以便上传到应用程序商店。但是1.从Xcode 11开始,他们不再提供应用程序加载器。
vltsax251#
***1.我们需要在www.example.com上生成证书,还需要导入到我们的密钥链中。developer.apple.com and also need to import into our keychain.
然后,您需要从应用商店连接下载应用的配置文件。(将其放置在任何您想要的位置,但需要在配置中注明)您可以在此处找到创建和下载应用程序的预配配置文件**https://developer.apple.com/account/resources/profiles/list**
2.需要配置electron-builder.以下是配置。
electron-builder.
{ "productName": "your product", "appId": "com.my.first.app", //which can be found on your app store connect "directories": { "buildResources": "buildResources", "output": "release" }, "files": ["main.js", "node_modules", "build" ], // include other necessary resources. "mac": { "type": "distribution", "target": ["mas", "pkg", "dmg"], "artifactName": "${productName}-${version}-${os}.${ext}", "category": "public.app-category.utilities", "provisioningProfile": "embedded.provisionprofile" }, "mas": { "hardenedRuntime" : false, //IMPORTANT!!!! "type": "distribution", "category": "public.app-category.utilities", "entitlements": "build/entitlements.mas.plist", "entitlementsInherit": "build/entitlements.mas.inherit.plist" }, }
<?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.application-groups</key> <string>[prefix (on your app store connect)].[app bundleID EX: com.desktop.app]</string> <key>com.apple.security.cs.allow-jit</key> <true/> <key>com.apple.security.cs.allow-unsigned-executable-memory</key> <true/> <key>com.apple.security.cs.allow-dyld-environment-variables</key> <true/> </dict> </plist>
<?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.inherit</key> <true/> </dict> </plist>
(as这个授权列表是基本的,你可以根据自己的需要进行配置,但是上面的授权列表是发布应用商店时必须的,特别是sand-box必须设置为苹果的要求)运行npm run build后,这意味着(电子生成器)电子生成器将生成mas、mac、pkg,然后
sand-box
npm run build
mas
mac
pkg
3.上传应用程序到Mac App Store。我使用了Mac App Store上的Transporter。(正如我之前提到的问题。从Xcode11开始,他们不再支持应用程序加载器)
Transporter
最后,这里是与当前electron-builder配合良好的项目结构。
参考:https://medium.com/@jondot/shipping-electron-apps-to-mac-app-store-with-electron-builder-e960d46148echttps://github.com/electron/electron-osx-sign/issues/188https://github.com/electron/electron/issues/22656希望这个能帮到你~(When沙盒已启用应用程序停止工作。这是正常行为)
1条答案
按热度按时间vltsax251#
***1.我们需要在www.example.com上生成证书,还需要导入到我们的密钥链中。developer.apple.com and also need to import into our keychain.
然后,您需要从应用商店连接下载应用的配置文件。(将其放置在任何您想要的位置,但需要在配置中注明)
您可以在此处找到创建和下载应用程序的预配配置文件**https://developer.apple.com/account/resources/profiles/list**
2.需要配置
electron-builder.
以下是配置。(as这个授权列表是基本的,你可以根据自己的需要进行配置,但是上面的授权列表是发布应用商店时必须的,特别是
sand-box
必须设置为苹果的要求)运行
npm run build
后,这意味着(电子生成器)电子生成器将生成mas
、mac
、pkg
,然后3.上传应用程序到Mac App Store。我使用了Mac App Store上的
Transporter
。(正如我之前提到的问题。从Xcode11开始,他们不再支持应用程序加载器)最后,这里是与当前electron-builder配合良好的项目结构。
参考:
https://medium.com/@jondot/shipping-electron-apps-to-mac-app-store-with-electron-builder-e960d46148ec
https://github.com/electron/electron-osx-sign/issues/188
https://github.com/electron/electron/issues/22656
希望这个能帮到你~
(When沙盒已启用应用程序停止工作。这是正常行为)