尝试在 iPhone 设备上调试使用 3.2 SDK 创建的构建时,我收到消息“已添加、修改或删除已签名的资源。”。
我可以清理,重建,然后安装没有错误,但如果我尝试安装而不清理错误显示。
任何人都知道可能导致这种情况的原因吗?
尝试在 iPhone 设备上调试使用 3.2 SDK 创建的构建时,我收到消息“已添加、修改或删除已签名的资源。”。
我可以清理,重建,然后安装没有错误,但如果我尝试安装而不清理错误显示。
任何人都知道可能导致这种情况的原因吗?
我找到了解决该错误的方法。
如果您在为设备构建之前删除 build/Debug-iphoneos/ 中的 .app 文件,则该应用程序将安装而不会出现错误。在每次构建之前都有一种简单的方法可以做到这一点。
确保您在下拉概览菜单中选择了“设备”。在 XCode 中转到 Project > New target... 然后在 MacOSX/Other 下找到“Shell Script target”并将其添加到当前项目中
现在,在左侧导航面板的目标下,展开新创建的目标并双击运行脚本。在打开的窗口中,将“# shell script goes here”替换为“rm -fr build/Debug-iphoneos/*.app”(不带引号)。现在打开您的主要目标首选项并在直接依赖项下添加您新创建的目标。建造并出发!:)
当 Product Name 中有特殊字符时会发生此错误。在我的情况下,它是一个“?”
如果您更改产品名称,它会自动更新“捆绑名称”和“捆绑显示名称”,因此它通常是重命名应用程序的最佳选择。
如果您想在应用名称中包含特殊字符,您必须手动重命名“Bundle Name”和“Bundle Display Name”
Bundle Name:这是文件系统中的实际应用程序包名称,例如“Awesome App.app”。它通常对用户不可见。
捆绑显示名称:这是显示在设备上的应用程序图标下的短名称。由于捆绑包名称将被截断为“Awes…tion”,因此您可以选择更适合的更短名称,例如“Awesome App”。它应该类似于 App Store 名称(在 iTunes Connect 中设置)
这显然是 3.2 SDK 中的一个错误,但我不想降级。我发现通过 push 进行 Clean Command+Shift+K
, then在推动构建Return
之前非常快。Command+R
Xcode 8,“已添加、修改或删除已签名资源”的原因。该目标是否与企业配置文件签署。
这可能有几个原因。找出导致它的最快方法是进入 Xcode、窗口菜单、设备,然后单击窗格底部的显示按钮以显示控制台。现在尝试运行。您应该看到命名它抱怨的特定文件的日志输出。
之前发布的大多数解决方案只是让 Xcode 重新生成构建文件夹的内容和/或重新签署文件的人为方法。
就我而言,我的 WatchKit 扩展以某种方式获取了对仅针对主应用程序的 Cocoapods 框架的引用,因此它们在构建期间被签名,然后被修剪(因为它们没有被使用)。然后在设备上,iOS 抱怨扩展名的 .appex 文件夹中缺少它们。我最终不需要扩展中的任何 pod,因此我只是将它们全部删除并将扩展作为目标删除,然后进行了一些小的清理以删除构建步骤中留下的与 pod 相关的碎片。现在一切正常。
(已解决)这是一个奇怪的问题。我尝试了我能找到的一切。最终,我将产品名称从“单元测试(设备)”更改为“设备单元测试”——去掉括号。现在一切正常。里面的空格看起来还不错。
以前在 stackoverflow 上:我刚刚在两个静态库项目中遇到了这个错误。一个在设备上使用 GHUnit 测试运行程序构建和测试没有问题。其他项目将无法安装并出现此错误。这意味着这两个项目之间是不同的。到目前为止,我已经尝试过擦除构建目录,从可执行文件名称中取出空格,并按照此处的建议进行各种清理和构建。
就我而言,它发生在没有进行任何更改的情况下。更改任何文件并再次运行。
对我来说也一样,认为它与多个目标等有关,因为我在那里改变了很多。但它很有可能是 3.2.2 版本中的一个 Bug,因为在我的项目发生大量目标更改之前,我没有在这个 sdk 版本中进行广泛的测试。
最简单的(可能也是最常见的原因)似乎是在没有任何更改的情况下进行重建。
所以解决它最简单的方法是对源文件进行一些微不足道的更改(例如添加一个空格,然后删除它),然后重新构建。
如果这不起作用,请随时在此处尝试所有其他答案。
几个月来,我一直没有意识到这是由于如此简单的原因而导致的此错误。我通常会做一个干净的构建来摆脱它。
我可以通过更改项目名称来解决。
[project]-[Rename] menu. "phase1 (new)" -> "pahse1"
解决了我的问题!!!
我偶然发现在我的应用程序的产品名称中发现了一个空格“”,因此它被称为“First Second.app”而不是“FirstSecond.app”。删除空间后问题消失了!
我在这里更改了它:右键单击目标 Get Info Build Tab Packaging Section Product Name <- 这里的名称将用于 bundle (.app) 名称
希望这会有所帮助,让我知道!
干杯,尼尔斯
我遇到了同样的错误,但时断时续。我尝试了以上所有方法,但仍然无法正常工作。今天我找到了造成它的原因。
在界面生成器中编辑 xib 时似乎会发生该错误。如果您尝试在 xcode 中打开界面生成器时运行,则会导致上述错误。要解决只需关闭界面生成器编辑器即可。即只需从您的项目中选择一个代码文件,以便您在源代码编辑器中。
就我而言,退出并重新启动 XCode 有效。
对我来说,问题与配置文件设置有关。对此的线索是调试版本安装正常,但发布版本没有。我想测试一个发布版本,所以我用那个构建配置运行了这个方案。
我通过复制发布配置来修复它,然后修改构建设置中的这些字段以具有与我正在调试它一样的配置内容。
(如果您使用 Cocoapods,添加另一个构建配置会让您头疼,那么您将不得不修改您的 Podfile)
当我使用 xcodebuild 命令通过终端创建 ipa 时,创建了 ipa,但是在安装它时我遇到了同样的错误。exportOptionsPlist 解决了我的问题。
xcodebuild -exportArchive -archivePath projectPath/myapp.xcarchive -exportPath projectPath/myApp.ipa -exportOptionsPlist ProjectFolder/exportPlist.plist
在 iPod Touch 上安装时,我得到了同样的结果。我无法链接模拟器(出于其他原因),所以不能说问题是否发生在那里。
是的,重建干净或从设备中删除应用程序允许我再次安装。两者都不是可取的迭代解决方案!
我遇到的最小“清理”是手动删除 build/Debug-iphoneos 目录中的 Foo.app 。
I reported this bug on ICU (Windows versions) to Apple in June 2011. With the following workarounds:
Win XP
1) Close ICU
2) Delete the temp folder: c:\Documents and Settings\[username]\Local Settings\Temp\[AppName].app
3) Delete the deploy folder: c:\Documents and Settings\[username]\Application Data\AppleComputer\MobileDevice
4) Restart ICU. Drag in the App and install normally.
============================
Win 7
1) Close ICU
2) Delete the temp folder: c:\Users\[username]\AppData\Local\Temp\[AppName].app
3) Delete the deploy folder: c:\Users\[username]\AppData\Local\Apple Computer\MobileDevice\Applications\[AppName].app
4) Restart ICU. Drag in the App and install normally.
=========================================================
看来这是 xcode 3.2.2 中的一个错误: iphonedevsdk
当我在我的应用程序名称中加上 + 时,我在 Xcode 3.2.1 中遇到了同样的问题。特别是构建设置中的“产品名称”。在 Info.plist 中的包名称中有一个 + 很好。这可能适用于其他标点符号。
在 Windows7 上使用 iPhone 配置实用程序安装应用程序时,我间歇性地收到此错误。Following solution works - Go to C:\Users\{lanusername}\AppData\Local\Temp and delete app specific folders (e.g. abc.app) and try installing app again.
我也面临同样的问题。浪费了很多时间后,我意识到我的产品名称有一个特殊字符“?” 这解决了问题
将 DerivedData 文件夹放在网络位置给我带来了这个问题。
在尝试了所有其他方法后,我发现我的工作站无法与大学服务器就时间达成一致。(它认为一切总是被修改)。我还必须为每次重建进行清理,以避免出现令人沮丧的消息。
最后我放弃并在本地构建,更改 Xcode > Preferences > Locations ......对于曾经在网络上构建过的感觉完全愚蠢。
我只是重建了我的应用程序,就解决了这个问题。
转到 Window > Organizer > Projects > Find your project 并删除派生数据
我们在 XCode_6.3.1 上遇到了这个问题。我们正在构建一个带有扩展的 AppleWatch 应用程序。我们确实有一堆 Pod。在调试了这个问题将近几个小时后,我们发现文件添加到项目的方式存在问题。
似乎一些对未使用文件的引用位于 iPhone 应用程序中,尽管它已在 Watch 应用程序中使用。事实证明,XCode 显示的错误完全没有用。
删除此文件并将其重新添加回项目后,项目开始正常工作并能够安装到设备上。为了使调试问题更加困难,安装了调试版本没有问题,但无法安装诺曼版本..
确保将文件添加到正确的目标,并查看 git 历史记录,看看是否有添加到错误目标的挥之不去的片段。
这是一条非常普遍的错误消息,表明在代码签名的验证过程中出现了问题。要找出具体错误,您可以转到 Xcode->Window->Devices 并检查您的设备日志。
就我而言,我有以下控制台喷
Feb 1 18:53:07 iPod-touch installd[40] : 0x1001f8000 -[MICodeSigningVerifier performValidationWithError:]: 192: 无法验证代码签名: 0xe8008017 (已添加、删除或修改签名资源)
再次查看这个 3rd 方框架,我在框架根目录下发现了一个额外的 CodeResources 文件。删除该文件解决了问题。