5

我有一个 Flutter 应用程序,它是在 Flutter for macOS 中构建的。但我想不出一种方法来对 Application.app 包进行代码设计。我已经搜索了互联网,但找不到正确的方法。

4

2 回答 2

12

程序非常简单。但它没有在任何地方正确记录。

  1. 从 Xcode 获取证书。最简单的一步就是使用Xcode,添加一个新的证书。在此处阅读有关它的更多信息https://help.apple.com/xcode/mac/current/#/dev154b28f09
  2. 获得证书后,您需要找到它的身份来签署您的应用程序。 security find-identity -p codesigning在终端中运行它并根据您刚刚创建的证书名称复制它为您提供的哈希值。
  3. flutter build macOS通过在您的项目文件夹中 运行UPDATE flutter build macOS 来构建您的 Flutter 应用程序的发布版本不再起作用。试试flutter build macos吧。参考。感谢@Bartosz 在评论中指出这一点。
  4. cd进入创建您的应用程序的文件夹。现在运行codesign --deep --force --verbose --sign "<identity>" Application.app 提供我们在步骤 2 中处理的哈希来代替(保留引号)。

你应该看到这样的东西Application.app: signed bundle with Mach-O thin (x86_64) [com.application]

  1. 验证签名codesign --verify -vvvv Application.appspctl -a -vvvv Application.app

第一个会给你类似的东西

Application.app: valid on disk
Application.app: satisfies its Designated Requirement

第二个会给你类似的东西

Application.app: accepted
source=Developer ID
origin=Developer ID Application: Spreaker Inc (xxx)

阅读更多关于它的信息https://pracucci.com/atom-electron-signing-mac-app.html

Flutter 桌面很棒。但是来自Android Dev背景,我不知道如何登录mac。希望它可以帮助某人。

于 2020-02-02T10:53:05.063 回答
1

您可以像使用任何标准 macOS 应用程序一样,使用 UI 或 xcconfig 在 Xcode 项目中简单地设置您的签名身份。签名过程没有任何特定于 Flutter 的内容。

于 2020-02-02T18:54:46.273 回答