如何强制 Flutter 使用新的开发者证书?

Posted

技术标签:

【中文标题】如何强制 Flutter 使用新的开发者证书?【英文标题】:How to force Flutter to use new developer certificate? 【发布时间】:2019-02-14 01:41:57 【问题描述】:

我目前正在使用 Flutter 开发一个应用程序。我以前可以直接使用 VS 代码或命令 flutter run 运行代码。自从我撤销了我的开发人员证书并生成了一个新证书后,执行上述选项后,该应用程序在我的 iPhone 上崩溃了。但是,如果我在模拟器上运行它,它会按预期工作。

我怀疑这是由于证书更改所致。 Xcode 说我的应用使用证书 B39****** 签名,而 flutter run 说它使用 578******* 签名

我什至尝试过flutter config --clear-ios-signing-certflutter upgrade,但它仍然以 578 签名。

如何强制 Flutter 使用新证书签署我的应用程序?目前,这意味着我无法在我的物理设备上使用热重载功能。

【问题讨论】:

我已经从 GitHub 重新下载了我的项目,它似乎正在运行。不过,我仍然想知道未来的正确解决方案。 您可以尝试使用 xcode 打开您的项目并在那里设置证书。我有一个类似的问题,一旦我在 xcode 上打开它,它就会自行修复。 @Serl 这就是我认为我所做的。我撤销了我的证书,从 Xcode 中下载了新证书,选择了个人团队,然后再次选择了主证书。那并没有刷新它。我也尝试过修改其他一些设置。 这确实很奇怪...很高兴您设法通过重新下载它来使其工作。某些 xcode 只需要一个干净的重启或其他东西 @Serl 也许。我也尝试过flutter clean,以防缓存出现问题。这甚至都行不通。 【参考方案1】:

我认为检查此文件vim ~/.flutter_settings 会很好。


  "ios-signing-cert": "Apple Development: XXXX@gmail.com (XXXXXXXX)",
  "enable-macos-desktop": true

【讨论】:

这个文件在哪里(我想它在flutter sdk的某个地方但我找不到它) ~/.flutter_settings 在我的系统上不存在...它移动了吗?这是在哪里记录的?【参考方案2】:

运行 flutter config 以查看您当前的设置和应用的证书选择。

要根据您可以运行的文档清除选择:

flutter config --clear-ios-signing-cert.

--clear-ios-signing-cert 清除保存的开发证书选项,用于签署 iOS 设备部署的应用程序。

颤振 2.0.5.

【讨论】:

【参考方案3】:

几个月前我遇到了一个非常相似的问题。我花了几个小时,基本上我必须退出然后重新登录 XCode:

XCode->首选项->帐户

完全退出任何帐户,然后使用最新的帐户重新登录。

【讨论】:

【参考方案4】:

使用

颤抖干净

在终端中。何时清除所选证书并在您下次运行代码时向您提供选择

【讨论】:

【参考方案5】:

我只是通过进入 Xcode 并设置正确的团队来修复它。我想也许 Flutter 确实在某处保存了这些旧默认 c 的文件

【讨论】:

以上是关于如何强制 Flutter 使用新的开发者证书?的主要内容,如果未能解决你的问题,请参考以下文章

如何将现有私钥用于新的 iOS 开发证书?

Win10内核驱动强制签名,申请沃通 EV代码签名证书

如何强制 Xcode 在 General 选项卡下接受我的 Developer ID 证书?

Flutter ios打包 ipa

iOS开发者后台添加了新的UDID,如何更新自动管理签名证书的设备描述文件(Provisioning Profiles)?

Flutter:如何强制应用程序重启(在生产模式下)?