所以我有以下问题:
在我的iPhone 5s上在iOS 8上启动我的应用程序,我没有错误,但在我的iPhone 3GS上在iOS 6.1.3上启动我的应用程序,我收到此错误:
dyld: Symbol not found: _OBJC_CLASS_$_NSNetService
Referenced from: /var/mobile/Applications/567E221A-FC5C-4011-90AD-E47E5FF033B1/BellyClient.app/BellyClient
Expected in: /System/Library/Frameworks/CFNetwork.framework/CFNetwork
in /var/mobile/Applications/567E221A-FC5C-4011-90AD-E47E5FF033B1/BellyClient.app/BellyClient
我导入了一个名为Server的类。该类使用CFNetwork.framework,其中包含自iOS 2.0以来可用的NSNetService类。
使用NSClassFromString(@“NSNetService”)并不是我喜欢的解决方案。 我也不知道,为什么会出现这个错误,因为类NSNetService应该在iOS 6中可用。它可能是设备吗?
我搜索并发现,将框架设置为Optional,将解决此问题。但问题是,当我在iOS 6上运行应用程序时,我无法使用该框架。当我做
时if ([NSNetService class] == nil) {
NSLog(@"NSNetService is nil");
}
我打印的NSNetService是零。
是否可以在不崩溃的情况下启动应用程序,而无需将框架设置为Optional
感谢iComputerfreak
答案 0 :(得分:4)
尝试重新添加Foundation.framework:
希望它有效 - 它确实适合我。