Проблемы с проверкой подписи приложения OSX для GateKeeper (Sierra) ["код действителен, но не является приложением"]

Я создаю свое приложение и подписываюсь с помощью действующего сертификата для подписи кода (Developer ID Application...) через:

codesign --force --verify --verbose --sign "Developer ID Application:..." <binary>

В моей папке.app/Contents/MacOS есть изначально скомпилированный двоичный файл, который я выполняю из приложения какао. Я также подписываю этот бинарный файл, используя ту же команду кодового знака.

Когда я пытаюсь проверить подпись различных компонентов, используя spctl, я получаю это для моего основного приложения какао:

accepted
source=Developer ID
origin=Developer ID Application: <redacted> Inc. (<redacted>)

Когда я запускаю то же самое на вторичном двоичном файле, я получаю:

rejected (the code is valid but does not seem to be an app)
origin=Developer ID Application: <redacted> Inc. (<redacted>)

Я не могу найти что-либо через Google сегодня в строке "код действителен, но, похоже, не приложение".

Я не уверен, что вывести из этого заявления или как действовать. Любая помощь?

1 ответ

У меня была такая же проблема, когда я связывался с go-astilectron-bundler и в моем случае добавлял

<key>CFBundlePackageType</key>
<string>APPL</string>

чтобы файл Info.plist решил проблему.

https://github.com/asticode/go-astilectron-bundler/pull/30/files

Другие вопросы по тегам