如何使用适用于 macOS 的 Visual Studio 代码为外部 Mac 应用商店签署和公证电子应用程序构建?

Posted

技术标签:

【中文标题】如何使用适用于 macOS 的 Visual Studio 代码为外部 Mac 应用商店签署和公证电子应用程序构建?【英文标题】:How to sign and notarize an electron application build using visual studio code for macOS for outside mac app store? 【发布时间】:2020-01-25 12:05:47 【问题描述】:

我使用 Visual Studio 代码创建了一个电子应用程序,用于在 Mac 应用商店之外发布。在 macOS 10.14.4 发布之前,我的应用程序是使用 electron-osx-sign 模块成功构建和签名的,该模块在内部使用 electron-forge。现在,在 macOS 更新后,我在构建应用程序时收到错误消息 - “rejected source = Unnotarized Developer ID”。

我在整个互联网上都在寻找可用于在 Xcode 中构建应用程序的解决方案,但是对于使用 javascript 在 Visual Studio 代码中构建的应用程序没有特定的解决方案。

我用来为我的 macOS 创建构建的命令:

electron-packager . appName --overwrite --platform=darwin --arch=x64 --electron-verison=5.0.1 -icon=icon.icns --osx-sign

请为任何可能的解决方案提供您的意见。

【问题讨论】:

你有什么解决方案吗? 【参考方案1】:

TL;DR

对我来说,将密码更改为应用专用密码解决了此错误。

解释

App Store Connect 现在要求对所有帐户进行双重身份验证 (2FA),因此您还必须为公证工具创建应用专用密码。

如何创建应用专用密码:https://support.apple.com/en-us/HT204397)

为什么需要应用专用密码:https://developer.apple.com/documentation/xcode/notarizing_macos_software_before_distribution/customizing_the_notarization_workflow?language=objc#3087734

(顺便说一句,“Unnotarized Developer ID”警告仍然会显示,因为电子进程在公证之前会检查订书钉,但它会继续并完成构建)

【讨论】:

以上是关于如何使用适用于 macOS 的 Visual Studio 代码为外部 Mac 应用商店签署和公证电子应用程序构建?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用适用于 Windows 8 的 Visual Studio Express 2012 创建适用于 Windows XP 的应用程序

Visual Studio如何使用键盘导航?

适用于Android的Visual Studio模拟器:如何更改键盘语言

适用于 Python 的 Visual Studio Code 缩进

如何自动化(从命令行)安装 Visual Studio Build Tools 构建环境,适用于 C++、.NET、C# 等

MFC 是不是仅适用于 Visual Studio,不适用于 Visual C++ Express?