避免"应用程序从互联网上下载"警告

时间:2017-05-26 20:59:08

标签: macos electron

我使用电子编写了一个应用并签名。

我已经确认我已使用codesign -dvvv命令正确签名:

Executable=/Volumes/MyApp/MyApp.app/Contents/MacOS/MyApp
Identifier=com.example.my-app
Format=app bundle with Mach-O thin (x86_64)
CodeDirectory v=20200 size=285 flags=0x0(none) hashes=3+3 location=embedded
Hash type=sha256 size=32
CandidateCDHash sha1=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
CandidateCDHash sha256=exxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Hash choices=sha1,sha256
CDHash=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Signature size=8925
Authority=Developer ID Application: Example, LLC (XXXXXXXXX)
Authority=Developer ID Certification Authority
Authority=Apple Root CA
Timestamp=May 24, 2017, 4:30:26 PM
Info.plist entries=21
TeamIdentifier=XXXXXXXXXX
Sealed Resources version=2 rules=13 files=10
Internal requirements count=1 size=192

然而,当我的同事从互联网上下载测试时,他收到了这个警告:

"MyApp" is an application downloaded from the Internet.  Are you sure you want to open it?

尽管选择" Mac App Store并确定了开发人员"来自"安全&隐私"屏幕设置。

基于Gatekeeper的描述:

https://support.apple.com/en-us/HT202491

我不希望得到那个警告。

如何构建或分发应用程序,以便用户不会收到该警告,我可以更改哪些内容?我们的用户根本不懂科技,所以任何警告信息都会让我们的手机响起。

1 个答案:

答案 0 :(得分:2)

article you linked about Gatekeeper开始,如果应用未正确签名,则警告会有所不同 - “[MyApp]来自身份不明的开发者”或“[MyApp]已损坏且无法打开”

因此,您“获取”[MyApp]是从互联网下载的应用程序“这一事实是正常的,并显示您的应用已正确签名。

您所看到的是用户将从互联网上下载任何应用程序的相同警告。例如,如果您下载Google Chrome,则会看到相同的消息:

enter image description here

因此,您的用户应该习惯在他们下载Mac App Store之外的任何内容时看到该消息。

要删除警告,他们需要在其系统上完全禁用Gatekeeper。在this blog post中有执行此操作的说明。