Xcode: "This app could not be installed at this time."
Xcode: "This app could not be installed at this time."
出于学习目的使用我的第一个应用程序。一切顺利,但遇到了 Xcode 的问题。当我尝试 运行 iPhone 模拟器上的应用程序时,此消息总是弹出 "This app could not be installed at this time."
怎么了?尝试构建应用程序时没有错误。已尝试清理构建。重新安装 pods。重新启动 Xcode。清除了模拟器设备上的所有设置,但是问题仍然存在。
错误信息没有给我任何信息。我可以查看另一个日志文件吗?
我设法找到了问题所在。问题是我在 属性 列表文件中添加了一些无效的键。我通过查看位于此处的日志文件发现了错误:~/Library/Logs/CoreSimulator/
我知道问题已经得到解答,但对于遇到同样问题的其他人,我建议如下:
检查模拟器日志,如果它打印有用的东西。首先,选择模拟器,然后从菜单选项中打开 Debug -> Open System Logs。
确保只有 1 个模拟器是 运行。
从模拟器中删除旧版本的应用程序。
如果导入自定义框架,请确保自定义框架->bundle-id 与 currentAppProject->bundle-id 不同。如果您不确定,只需更改当前项目的 bundle-id。
另外一些模拟器可能有问题 -> 只需更换模拟器,它可能会解决问题,对我来说更换模拟器有效。
您可能还想查看不同目标的功能。我的 App ID
最终出现了问题
重置模拟器:
Hardware
-> Erase All content and settings...
清理你的项目:
shift
+cmd
+K
shift
+opt
+cmd
+K
这应该可以解决您的问题
非常适合我的模拟器并重新开始。在我的例子中,如果我在 iPhone X 模拟器之后更改包标识符和 运行,那么错误总是会发生。
我也遇到了这个错误。在我让 Xcode 更新我的项目设置后不久,这一切就开始了。特别是在我的 CocoaPod 子项目上。我删除了 pods 并重新安装它们,这解决了我的问题。希望这对您或其他发现此问题的人也有用。
只要重启模拟器就可以解决我的问题。
更改 InfoPlist.strings 中的 CFBundleShortVersionString 以匹配 info.plist 中的那个为我解决了这个问题。进行此更改后,我不得不使用模拟器的 "Erase All Content and Settings"。
尝试在使用 iOS 9.0(而不是 11.2)的模拟器上启动时出现了这个错误,这帮助我找到了更多关于明显相同问题的答案:
The operation couldn’t be completed. (LaunchServicesError error 0.)
在 ~/Library/Logs/CoreSimulator//MobileInstallation
中发现问题
WatchKit 2 app extension's
NSExtension.NSExtensionAttributes.WKAppBundleIdentifier value does not
match WatchKit app's bundle ID
对于在这个晦涩的错误上浪费时间的任何人。如果您没有任何相关日志并且所有其他答案均失败,您可能会检查您最近是否添加了一个框架,该框架由于某种原因(未调查原因)无法嵌入,只能链接。 iOS.
的 GoogleMaps 发生在我身上
我在使用 Xcode 9.2 时遇到了这个问题。解决方法是简单地 删除该应用程序并再次 re-install 它。
我解决了这个问题,从 Xcode 首选项中删除了 DerivedData。以及 重新启动 来自硬件的模拟器。
我在所有模拟器和所有设备上都看到了这一点。卸载该应用程序一次就可以了,但它对我来说一直失败。
解决方法是清除我项目的所有 pods:
pod deintegrate
然后重新安装:
pod install
这是 XCode 9.3 和 iOS 11.2/11.3。
您也可以只从模拟器中删除该应用程序,而不是重新启动模拟器。当您使您的应用程序准备好生产,然后尝试在 phone 上构建它时,会导致此错误。当您尝试构建同一个应用程序两次时会出现问题(这也是为什么在测试模式下 运行 时不会出现此问题的原因)。
我遇到了这个错误,但这与我的 Info.plist
或 Cocoapods 无关。我在我的 Xcode 项目中错误地删除了一个重复的 NotificationServiceExtension
组,这导致我最终得到一个没有源文件的 NotificationServiceExtension
目标(我只需要一个源文件来 integrate/piggy-back 关闭 Urban Airship SDK 的丰富通知)。
在还原我删除重复组的提交然后删除正确的重复组(没有将源文件列为目标的一部分的那个)之后,我能够构建并 运行 很好。
当我与另一个使用不同版本 CocoaPods 的开发人员切换分支时发生,删除派生数据文件夹有效!
rm -rf ~/Library/Developer/Xcode/DerivedData/
如果导入自定义框架,请确保自定义框架->bundle-id 与 currentAppProject->bundle-id 不同。如果您不确定,则只需更改当前项目的 bundle-id。它对我有用:)
就我而言,当我从 Cocoapods 迁移到 Carthage 并在我的依赖项中添加 Firebase iOS SDK 时出现该消息。
当我意识到 Firebase 不需要在 carthage copy-frameworks
阶段复制的框架中时,问题就解决了。
有关 Firebase 和 Carthage 的更多信息,请参阅 official documentation。
在这里添加一些额外的信息。虽然 Xcode 告诉您 为什么 应用程序无法安装完全没有帮助,但控制台有非常好的错误消息。只需启动 Console.app(Applications > Utilities > Console)并按 installcoordinationd
.
过滤输出
它会给你这样的错误描述:
installcoordinationd -[IXSCoordinatedAppInstall _onQueue_acquireAssertionAndDoInstall]_block_invoke: Installation for identifier:com.acme.location-thingy uuid:blah-blah-blah-foo intent:IXCoordinatorIntentInitiating creator/appDRI:InstallCoordination Simple SPI userInitiated:N state:IXAppCoordinationStateWaitingForInstall> failed: Error Domain=MIInstallerErrorDomain Code=99 "WatchKit v3 app has disallowed Info.plist key: NSLocationUsageDescription" UserInfo={LegacyErrorString=WatchKitAppIllegalInfoPlistKey, FunctionName=-[MIExecutableBundle hasOnlyAllowedWatchKitAppInfoPlistKeysForWatchKitVersion:error:], SourceFileLine=1841, NSLocalizedDescription=WatchKit v3 app has disallowed Info.plist key: NSLocationUsageDescription}
希望对大家有所帮助!
我在开发我的第一个 WatchKit 应用程序时遇到了这个错误。按照@PureRushh、@Antonioni 和其他人的指导转储以下内容:
~/Library/Logs/CoreSimulator/CoreSimulator.log
日志内容导致我出错。我将包含详细信息,以防其他人在开发 WatchKit 应用程序时遇到此错误。
日志消息:
com.apple.dt.Xcode[89555] : installApplication:withOptions:error:: Error Domain=IXUserPresentableErrorDomain Code=1 "This app could not be installed at this time." UserInfo={NSLocalizedDescription=This app could not be installed at this time.,NSUnderlyingError=0x7f9ab87d1f20 {Error Domain=MIInstallerErrorDomain Code=101 "WatchKit 2.0 app's bundle ID com.somecompany.AirTime2.watchkitapp is not prefixed by the parent app's bundle ID followed by a '.'; expected prefix com.somecompany.AirTime."
原因:我修改了与父应用的 Info.plist(通过常规-> 捆绑标识符)中的 BundleIdentifier 键关联的值以匹配 URL 类型(用于 SSO 重定向);但是,我未能更新与 WKCompanionAppBundleIdentifier 键关联的 WatchKit App Info.plist 值(参见第二个粗线)。
修复:将 WKCompanionAppBundleIdentifier 键的 WatchKit 应用 Info.plist 值修改为 同意 与父应用的包 ID
当我在 Xcode 10.0.
中为目标设置了一个空的内部版本号时,就会发生这种情况。
在我的例子中,我试图 运行 一个小部件。小部件的方案设置应该是:
运行 -> 信息 -> 可执行文件:"Ask on launch"
我也遇到过这样的问题。但对我没有任何用处。然后我注意到我的 info.Plist 文件中有一个问题。可执行文件名与编辑架构中的架构名称不同。因此,请确保两者相同,然后尝试 运行 您的项目。它应该工作。
大家好,我只是想让你们知道以上 none 对我有用。
我工作很忙,将一个动态库集成到我的项目中。我知道图书馆工作,所以我没有再给它 thought.W 我所做的只是为了
删除对 MyLibrary1 的引用,重新编译 MyLibrary1 并再次嵌入
成功构建。希望这对某人有所帮助。
问候
罗尔夫
我删除了 ~/Library/Logs/CoreSimulator/ 中的文件,但问题仍然存在。然后我清空所有内容和设置就OK了!
如果有人仍然面临这个问题,请检查这些步骤。
当您的 Info.plist 出现错误时,通常会发生这种情况。在我的例子中,有两个 Supported interface orientations 条目。
按照这些步骤,您一定会找到解决办法的。其中大部分已经在上面提到了
- 模拟器 > 设备 > 清除所有内容和设置
- 删除 Supported interface orientation 的重复条目或检查您的 plist 文件是否有任何错误
- 在您的 Xcode > 产品 > 清理构建文件夹中 (Cmd + Shift + K)
- 尝试构建并运行项目
我希望你能在这之后解决这个恼人的问题。
请检查附件中的参考图片
当您使用非字母表的字母作为显示名称时,可能会出现此错误。有关更多信息,请查看此内容。
Xcode11でCould not hardlink copyってエラーが出る
对我来说,将 Xcode 移动到“应用程序”文件夹解决了这个问题。如果您确实从网上下载了 Xcode,请考虑这样做。
只需在模拟器中自行删除您的应用程序
并再次 运行 。
它对我有用。
就我而言,我的应用使用越南语的应用显示名称(包含一些特殊字符)。我删除了安装在模拟器中的旧应用程序,然后仅使用字母字符更改了我的应用程序名称,并且成功了!
在我的例子中,问题是创建一个新目标,该目标具有与现有目标相同的捆绑包 ID。改完之后,瞧!
出于学习目的使用我的第一个应用程序。一切顺利,但遇到了 Xcode 的问题。当我尝试 运行 iPhone 模拟器上的应用程序时,此消息总是弹出 "This app could not be installed at this time."
怎么了?尝试构建应用程序时没有错误。已尝试清理构建。重新安装 pods。重新启动 Xcode。清除了模拟器设备上的所有设置,但是问题仍然存在。
错误信息没有给我任何信息。我可以查看另一个日志文件吗?
我设法找到了问题所在。问题是我在 属性 列表文件中添加了一些无效的键。我通过查看位于此处的日志文件发现了错误:~/Library/Logs/CoreSimulator/
我知道问题已经得到解答,但对于遇到同样问题的其他人,我建议如下:
检查模拟器日志,如果它打印有用的东西。首先,选择模拟器,然后从菜单选项中打开 Debug -> Open System Logs。
确保只有 1 个模拟器是 运行。
从模拟器中删除旧版本的应用程序。
如果导入自定义框架,请确保自定义框架->bundle-id 与 currentAppProject->bundle-id 不同。如果您不确定,只需更改当前项目的 bundle-id。
另外一些模拟器可能有问题 -> 只需更换模拟器,它可能会解决问题,对我来说更换模拟器有效。
您可能还想查看不同目标的功能。我的 App ID
最终出现了问题重置模拟器:
Hardware
-> Erase All content and settings...
清理你的项目:
shift
+cmd
+K
shift
+opt
+cmd
+K
这应该可以解决您的问题
非常适合我的模拟器并重新开始。在我的例子中,如果我在 iPhone X 模拟器之后更改包标识符和 运行,那么错误总是会发生。
我也遇到了这个错误。在我让 Xcode 更新我的项目设置后不久,这一切就开始了。特别是在我的 CocoaPod 子项目上。我删除了 pods 并重新安装它们,这解决了我的问题。希望这对您或其他发现此问题的人也有用。
只要重启模拟器就可以解决我的问题。
更改 InfoPlist.strings 中的 CFBundleShortVersionString 以匹配 info.plist 中的那个为我解决了这个问题。进行此更改后,我不得不使用模拟器的 "Erase All Content and Settings"。
尝试在使用 iOS 9.0(而不是 11.2)的模拟器上启动时出现了这个错误,这帮助我找到了更多关于明显相同问题的答案:
The operation couldn’t be completed. (LaunchServicesError error 0.)
在 ~/Library/Logs/CoreSimulator//MobileInstallation
中发现问题WatchKit 2 app extension's NSExtension.NSExtensionAttributes.WKAppBundleIdentifier value does not match WatchKit app's bundle ID
对于在这个晦涩的错误上浪费时间的任何人。如果您没有任何相关日志并且所有其他答案均失败,您可能会检查您最近是否添加了一个框架,该框架由于某种原因(未调查原因)无法嵌入,只能链接。 iOS.
的 GoogleMaps 发生在我身上我在使用 Xcode 9.2 时遇到了这个问题。解决方法是简单地 删除该应用程序并再次 re-install 它。
我解决了这个问题,从 Xcode 首选项中删除了 DerivedData。以及 重新启动 来自硬件的模拟器。
我在所有模拟器和所有设备上都看到了这一点。卸载该应用程序一次就可以了,但它对我来说一直失败。
解决方法是清除我项目的所有 pods:
pod deintegrate
然后重新安装:
pod install
这是 XCode 9.3 和 iOS 11.2/11.3。
您也可以只从模拟器中删除该应用程序,而不是重新启动模拟器。当您使您的应用程序准备好生产,然后尝试在 phone 上构建它时,会导致此错误。当您尝试构建同一个应用程序两次时会出现问题(这也是为什么在测试模式下 运行 时不会出现此问题的原因)。
我遇到了这个错误,但这与我的 Info.plist
或 Cocoapods 无关。我在我的 Xcode 项目中错误地删除了一个重复的 NotificationServiceExtension
组,这导致我最终得到一个没有源文件的 NotificationServiceExtension
目标(我只需要一个源文件来 integrate/piggy-back 关闭 Urban Airship SDK 的丰富通知)。
在还原我删除重复组的提交然后删除正确的重复组(没有将源文件列为目标的一部分的那个)之后,我能够构建并 运行 很好。
当我与另一个使用不同版本 CocoaPods 的开发人员切换分支时发生,删除派生数据文件夹有效!
rm -rf ~/Library/Developer/Xcode/DerivedData/
如果导入自定义框架,请确保自定义框架->bundle-id 与 currentAppProject->bundle-id 不同。如果您不确定,则只需更改当前项目的 bundle-id。它对我有用:)
就我而言,当我从 Cocoapods 迁移到 Carthage 并在我的依赖项中添加 Firebase iOS SDK 时出现该消息。
当我意识到 Firebase 不需要在 carthage copy-frameworks
阶段复制的框架中时,问题就解决了。
有关 Firebase 和 Carthage 的更多信息,请参阅 official documentation。
在这里添加一些额外的信息。虽然 Xcode 告诉您 为什么 应用程序无法安装完全没有帮助,但控制台有非常好的错误消息。只需启动 Console.app(Applications > Utilities > Console)并按 installcoordinationd
.
它会给你这样的错误描述:
installcoordinationd -[IXSCoordinatedAppInstall _onQueue_acquireAssertionAndDoInstall]_block_invoke: Installation for identifier:com.acme.location-thingy uuid:blah-blah-blah-foo intent:IXCoordinatorIntentInitiating creator/appDRI:InstallCoordination Simple SPI userInitiated:N state:IXAppCoordinationStateWaitingForInstall> failed: Error Domain=MIInstallerErrorDomain Code=99 "WatchKit v3 app has disallowed Info.plist key: NSLocationUsageDescription" UserInfo={LegacyErrorString=WatchKitAppIllegalInfoPlistKey, FunctionName=-[MIExecutableBundle hasOnlyAllowedWatchKitAppInfoPlistKeysForWatchKitVersion:error:], SourceFileLine=1841, NSLocalizedDescription=WatchKit v3 app has disallowed Info.plist key: NSLocationUsageDescription}
希望对大家有所帮助!
我在开发我的第一个 WatchKit 应用程序时遇到了这个错误。按照@PureRushh、@Antonioni 和其他人的指导转储以下内容:
~/Library/Logs/CoreSimulator/CoreSimulator.log
日志内容导致我出错。我将包含详细信息,以防其他人在开发 WatchKit 应用程序时遇到此错误。
日志消息:
com.apple.dt.Xcode[89555] : installApplication:withOptions:error:: Error Domain=IXUserPresentableErrorDomain Code=1 "This app could not be installed at this time." UserInfo={NSLocalizedDescription=This app could not be installed at this time.,NSUnderlyingError=0x7f9ab87d1f20 {Error Domain=MIInstallerErrorDomain Code=101 "WatchKit 2.0 app's bundle ID com.somecompany.AirTime2.watchkitapp is not prefixed by the parent app's bundle ID followed by a '.'; expected prefix com.somecompany.AirTime."
原因:我修改了与父应用的 Info.plist(通过常规-> 捆绑标识符)中的 BundleIdentifier 键关联的值以匹配 URL 类型(用于 SSO 重定向);但是,我未能更新与 WKCompanionAppBundleIdentifier 键关联的 WatchKit App Info.plist 值(参见第二个粗线)。
修复:将 WKCompanionAppBundleIdentifier 键的 WatchKit 应用 Info.plist 值修改为 同意 与父应用的包 ID
当我在 Xcode 10.0.
中为目标设置了一个空的内部版本号时,就会发生这种情况。在我的例子中,我试图 运行 一个小部件。小部件的方案设置应该是: 运行 -> 信息 -> 可执行文件:"Ask on launch"
我也遇到过这样的问题。但对我没有任何用处。然后我注意到我的 info.Plist 文件中有一个问题。可执行文件名与编辑架构中的架构名称不同。因此,请确保两者相同,然后尝试 运行 您的项目。它应该工作。
大家好,我只是想让你们知道以上 none 对我有用。
我工作很忙,将一个动态库集成到我的项目中。我知道图书馆工作,所以我没有再给它 thought.W 我所做的只是为了 删除对 MyLibrary1 的引用,重新编译 MyLibrary1 并再次嵌入 成功构建。希望这对某人有所帮助。
问候 罗尔夫
我删除了 ~/Library/Logs/CoreSimulator/ 中的文件,但问题仍然存在。然后我清空所有内容和设置就OK了!
如果有人仍然面临这个问题,请检查这些步骤。 当您的 Info.plist 出现错误时,通常会发生这种情况。在我的例子中,有两个 Supported interface orientations 条目。
按照这些步骤,您一定会找到解决办法的。其中大部分已经在上面提到了
- 模拟器 > 设备 > 清除所有内容和设置
- 删除 Supported interface orientation 的重复条目或检查您的 plist 文件是否有任何错误
- 在您的 Xcode > 产品 > 清理构建文件夹中 (Cmd + Shift + K)
- 尝试构建并运行项目
我希望你能在这之后解决这个恼人的问题。
请检查附件中的参考图片
当您使用非字母表的字母作为显示名称时,可能会出现此错误。有关更多信息,请查看此内容。 Xcode11でCould not hardlink copyってエラーが出る
对我来说,将 Xcode 移动到“应用程序”文件夹解决了这个问题。如果您确实从网上下载了 Xcode,请考虑这样做。
只需在模拟器中自行删除您的应用程序 并再次 运行 。 它对我有用。
就我而言,我的应用使用越南语的应用显示名称(包含一些特殊字符)。我删除了安装在模拟器中的旧应用程序,然后仅使用字母字符更改了我的应用程序名称,并且成功了!
在我的例子中,问题是创建一个新目标,该目标具有与现有目标相同的捆绑包 ID。改完之后,瞧!