很遗憾,错误信息并没有解释安装失败的原因。您可以查看~/Library/Logs/CoreSimulator/CoreSimulator.log以查看是否有更多信息的剩余错误消息。如果没有,您应该检查模拟器设备的系统日志:
sudo xcode-select -s /Applications/Xcode-beta.app # if you haven’t already
xcrun simctl spawn booted log show
--predicate
进行筛选。xcrun simctl spawn booted log show | grep "This app was unable to be installed."
- Anton Matosov虽然回答晚了,但对于其他人可能很有用。我刚开始接手一个已经存在的表盘套件和自定义键盘代码的项目。在更改标识符后,我遇到了相同的错误,花了一天时间找出原因。
我检查了所有版本的包标识符和代码包。然后我在Xcode中使用旧标识符进行全局搜索,并发现以下内容:
这两个.plist文件中都有旧的WKCompanionAppBundleIdentifier,所以在我手动更新它为新的标识符之后,应用程序可以再次运行。
重要提示:
如果您仅从“常规”选项卡更改标识符,则并不意味着它会全部更新。请通过搜索并将其替换为新标识符来检查所有可能的位置。
XCODE VERSIO: Version 9.0 (9A235)
我在使用Xcode 9的IOS模拟器上安装我的应用程序时遇到了类似的问题。
我发现问题(至少对于我的情况)是由于Watch App的info.plist中存在未经授权的密钥(Privacy - Location When In Use Usage Description)导致的。
我已将此密钥移动到WatchKit Extension的info.plist中,现在应用程序可以重新安装。
我希望这能帮助其他遇到相同问题的人。
我遇到了同样的错误,而且我在我的项目中使用了Cocoapods,对我有帮助的方法就是更新pods。
这个问题可能由多个条件引发,但是如果你查看日志文件 ~/Library/Logs/CoreSimulator/CoreSimulator.log
,并且它显示了以下错误:
NSUnderlyingError=0x7fb51c271ee0 Could not hardlink copy /originPath to /destinationPath
那么你的项目目标设置中的构建号可能为空。
进入 项目目标 > 身份 > 构建
并设置一个构建号。在安装更新版本之前,你需要先卸载模拟器中的应用程序,并重新安装它。
根据需求更改部署目标。 选择项目 > GENERAL > DEPLOYMENT TARGET 还要检查您设备的iOS版本。
在重命名包含iOS和watchOS应用程序的项目之后,我在Xcode 9.0 beta 5中遇到了此问题。为了解决这个问题,我重新创建了iOS目标。