这是一个会影响许多应用的问题,可以在Xcode 8 beta(8S128d)中找到.这是第一个测试版,虽然它没有标记为beta 1.
问题出在NSUserDefaults; 它不起作用.这是代码,可能会把它放进去application:didFinishLaunchingWithOptions:.
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setValue:@"hello world" forKey:@"TEST"];
[defaults synchronize];
NSString * oops = [[NSUserDefaults standardUserDefaults] valueForKey:@"TEST"];
NSLog(@"default = %@", oops);
Run Code Online (Sandbox Code Playgroud)
在XCode 7和更早版本中,此代码按预期工作:值为oops"hello world".
XCode中8,的值oops是nil.
那是非常重要的!
启动Swift 3/iOS 10,preferredStatusBarStyle和prefersStatusBarHidden等方法变为:
@available(iOS 7.0, *)
open var preferredStatusBarStyle: UIStatusBarStyle { get }
@available(iOS 7.0, *)
open var prefersStatusBarHidden: Bool { get }
Run Code Online (Sandbox Code Playgroud)
因此,用于覆盖方法的现有代码不再构建.鉴于这些属性是只读的,你如何为它们赋值/覆盖它们?
我不能为我的生活弄清楚如何在Xcode 8 GM中编辑我的瓷砖地图.双击不执行任何操作,并在编辑器下拉列表中"编辑平铺图"显示为灰色.
我所做的就是将瓷砖地图拖放到场景中,甚至创建一个新项目并重新开始并没有帮助.我见过的每一个视频/教程都刚刚显示添加它并双击编辑......有什么东西真的很简单吗?
我有一个问题是在Xcode 8中打开我的项目它正在加载而不是打开.昨天它已经开放,但今天没有.我已经删除了xcurdata文件夹,清除了DerivedData文件夹并删除了〜>/Library/Caches中的com.apple.dt.Xcode文件
有人给我一个灯吗?
我正在为XCode 8编写一个非常复杂的应用程序的UI测试.我发现了几个问题,其中一个问题是我运行的每个测试都需要几分钟.
我正在运行的特定测试的流程甚至都不复杂.
我得到许多"等待app闲置"的消息.
有谁知道为什么测试需要这么长时间才能运行,或者你对我如何加快它们有任何建议?WWDC演示基本上是即时的,但这是一个非常简单的应用程序.
这是我看到的一个例子,以及需要多长时间.(测试还在运行!)
Run Code Online (Sandbox Code Playgroud)t = 504.16s Wait for app to idle t = 625.29s App animations complete notification not received, will attempt to continue. t = 625.30s Synthesize event t = 625.67s Wait for app to idle
谢谢!
更新:当我与应用程序轻微交互时,同时保持我需要的元素,例如通过拉取tableview,测试继续.
我已经完成了使用Swift 3 的Cocoa(非iOS)应用程序.我已经在台式计算机上测试过它.它工作正常.我在另一台台式电脑上测试过它.它工作正常.我甚至设法将它发送到iTunes Connect.但我没有提交它,因为相同的应用程序无法在MacBook Pro(2013)上运行.无论如何,我已经在带有视网膜显示屏的MacBook Pro上进行了测试.这就是整个问题开始发生的时候.实际上,这个桌面应用程序几天前在同一台MacBook Pro上运行.我认为它还没有沙盒.现在,每当我通过AirDrop将不同iMac模型上运行的二进制副本发送到MacBook Pro并尝试运行应用程序时,我都会收到错误消息EXC_CRASH (Code Signature Invalid).所以我删除了Developer/ Xcode/中的一些文件DerviedData. 现在,我甚至无法调试应用程序.当我调试它时,它会挂起一个致命的错误消息,这是我以前从未见过的.
现在,如果我双击Xcode生成的应用程序,我会收到一个崩溃报告,其中显示未加载库:@ rpath/libswiftAppKit.dylib.我以为我可能会意外删除一些系统文件.但是,如果我调试现有的macOS和iOS应用程序,我运行它们没有问题.幸运的是,整个问题发生在这个特定的Xcode项目上.
我在这里找到的一个主题建议我们将Always Embed Swift标准库选项设置为Yes.我没有誓言就这样做了.我还阅读了一个建议,说明When using this certification在开发人员证书上设置选项Use System Defaults,这没有帮助.我尝试过的另一个建议是清除缓存(Command + Shift + Option + K).
如果您有任何建议,请让我知道.谢谢.
更多信息
我还在MacBook Pro上反复看到一条奇怪的警告信息,说"%@"无法找到.双击应用程序图标时出现此错误消息.它可以参考
String(format: NSLocalizedString("whatever", comment: ""), variable name)
Run Code Online (Sandbox Code Playgroud) 我尝试将我的项目更新为Swift 3,并且在启动Xcode后我的应用程序崩溃显示以下消息:
线程1 EXC_BREAKPOINT(代码= 1,子代码= 0x101959bfc)
这是问题发生的地方
var list:[PFObject]! = []
(...)
let x = list[indexPath.row - 1]
let text:Int = (x["text"] as! NSArray)[0] as! Int //The line where the error is displayed
Run Code Online (Sandbox Code Playgroud)
控制台只说:
(LLDB)
我已经从断点导航器中删除了所有断点而没有结果,这个问题在设备和模拟器上都发生了.(我使用Xcode 8.2)非常感谢您的帮助
我在xcode 8,cocoa pods版本cocoapods-1.2.0上安装realm时遇到这个奇怪的错误
错误是 -
安装领域(2.4.3)
[!]/bin/bash -c
set -e
sh build.sh cocoapods-setup./scripts/swift-version.sh:59行:[:=:一元运算符预期没有找到支持Swift 3.0.2的Xcode版本
所有其他豆荚都很棒.
我在这里先向您的帮助表示感谢.

使用Xcode 8.2.1
一套Swift XCT单元测试在运行时不会在相应的swift文件上突出显示代码覆盖率(带有绿色/红色突出显示和编号)。
code coverage : Gather coverage data了测试方案。~/Library/Developer/Xcode/DerivedData和~/Library/com.apple.dt.Xcode。我知道报表导航器可以显示覆盖率,但是它是独立的。
xcode8 ×10
ios ×4
swift ×4
xcode ×3
ios10 ×2
swift3 ×2
cocoa ×1
cocoapods ×1
macos-sierra ×1
sprite-kit ×1
testflight ×1