WatchKit应用程序的部署目标必须等于iOS 8.2(was 8.3)?
我刚刚下载了Xcode 6.3 beta 4,我的WatchKit应用程序现在无法构建,出现了一个错误:WatchKit应用程序的部署目标必须等于iOS 8.2(was 8.3)?,ios,watchkit,apple-watch,xcode6.3,Ios,Watchkit,Apple Watch,Xcode6.3,我刚刚下载了Xcode 6.3 beta 4,我的WatchKit应用程序现在无法构建,出现了一个错误: Embedded Binary Validation Utility Error error: WatchKit apps must have a deployment target equal to iOS 8.2 (was 8.3) iOS应用程序和项目实际上有一个7.1的部署目标,而且一直都有,但是我们一直在为我们的WatchKit组件使用iOS 8.3 SDK(使用Swift 1.
Embedded Binary Validation Utility Error
error: WatchKit apps must have a deployment target equal to iOS 8.2 (was 8.3)
iOS应用程序和项目实际上有一个7.1的部署目标,而且一直都有,但是我们一直在为我们的WatchKit组件使用iOS 8.3 SDK(使用Swift 1.2),使用Xcode 6.3 beta 1、2和3时没有问题。这个错误只在Xcode 6.3 beta 4中出现
其他人有这个错误,并且知道如何修复它吗?我自己也遇到了这个问题。似乎是Xcode 6.3 beta 4中的一个bug 我分析了一个新创建的带有WatchKit扩展名的项目的
project.pbxproj
文件(在文本视图中)。看起来有一个设置:
IPHONEOS_DEPLOYMENT_TARGET = 8.2;
…这在我们使用早期Xcode版本创建的项目中缺失
因此,我手动将此设置复制到项目的调试和发布配置中。这个错误消失了
然后,我得到了另一个关于我的应用程序和WatchKit应用程序目标之间版本不匹配的错误。修复此版本不匹配使生成可以干净地编译并正常运行
我知道这有点骇客,但我猜这是相对安全的
在搜索project.pbxproj文件时,您需要匹配此搜索词:“\u WatchKit\u Extension”
。这应确定应添加新指令的附近区域
苹果论坛的讨论主题:
摘自一个新项目:
4F9F32751AC2024F00673D86 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"$(inherited)",
);
IBSC_MODULE = Bogus_WatchKit_Extension;
INFOPLIST_FILE = "Bogus WatchKit App/Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 8.2;
PRODUCT_NAME = "$(TARGET_NAME)";
SKIP_INSTALL = YES;
TARGETED_DEVICE_FAMILY = 4;
"TARGETED_DEVICE_FAMILY[sdk=iphonesimulator*]" = "1,4";
};
name = Debug;
};
4F9F32761AC2024F00673D86 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
IBSC_MODULE = Bogus_WatchKit_Extension;
INFOPLIST_FILE = "Bogus WatchKit App/Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 8.2;
PRODUCT_NAME = "$(TARGET_NAME)";
SKIP_INSTALL = YES;
TARGETED_DEVICE_FAMILY = 4;
"TARGETED_DEVICE_FAMILY[sdk=iphonesimulator*]" = "1,4";
};
name = Release;
};
我也遇到了同样的问题“iOS部署目标'8.3'比Target YUOR_项目WatchKit扩展中的n SDK'iOS 8.2'更新”
”
下面是这个问题的简单解决方案。
您可以从.xcodeproj更改目标,只需执行以下步骤:
选择项目设置并转到“目标”。单击手表套件应用程序,选择构建设置。对于关键的“iOS部署目标”,您应该找到“iOS 8.3”。出于某种原因,Xcode 6.3 Beta 4希望在“iOS 8.2”上使用此功能进行“调试”和“发布”。现在,您的项目应该按照预期进行构建
对于XCODE 6.3版本,这仍然是正确的 转到目标->选择手表套件应用程序, 部署下将值从8.3更改为 //:配置=调试 IPHONEOS_部署_目标=8.2 //:配置=发布 IPHONEOS_部署_目标=8.2 清洁和建造。问题解决了 Target->“appName”监视工具包应用程序->搜索部署->更改iOS 8.2上的iOS部署目标->运行
令人惊讶的是,在6.4中仍然如此;-)
所有目标必须设置为8.2,在Xcode 7.3.1的模拟器中遇到同样的问题,可以通过查看应用程序来解决,然后查看操作系统部署目标,在那里您可以根据您的手表选择较低版本。希望这有帮助。我也遇到了同样的问题。现在回到Beta 3。很高兴知道不只是我一个人,而且听起来它会起作用。我想我现在就回到beta 3,看看是否有修复程序。我做了这个,它工作了,但找不到它是调试版还是发布版。我只在一个地方找到这个,在那里我改变了它。如何选择调试或发布?您需要选择行旁边的箭头以展开它以显示调试和发布。愚蠢的问题。。。如何安装8.2 SDK?我这里只有8.3。。。找不到安装8.2的位置:(@Georg单击顶部工具栏中的Xcode,然后单击“首选项”,然后单击“组件”下的“下载”选项卡查看“1”解决方案。我选择了“项目设置…”,并且在精简UI中没有足够的选项,无法继续。