Mat*_*ker 22 xcode gcc mgtwitterengine ios
编译ApplicationTests单元测试包时,为什么这段代码不起作用?
#if TARGET_OS_IPHONE
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
#else
#import <Cocoa/Cocoa.h>
#endif
Run Code Online (Sandbox Code Playgroud)
我的一个依赖项有这个检查,并在我的主应用程序包中编译得很好,但它<Cocoa/Cocoa.h>在编译我的ApplicationTests包时尝试加载.这可能只是我对Xcode缺乏了解,但是当我的测试包没有构建时我会感到紧张.有什么建议?
ant*_*tho 31
你需要添加
#import "TargetConditionals.h"
Run Code Online (Sandbox Code Playgroud)
来源:https://opensource.apple.com/source/CarbonHeaders/CarbonHeaders-8A428/TargetConditionals.h.auto.html
Jam*_*s J 14
我有一个类似的问题:TARGET_OS_IPHONE在构建静态库时没有定义.我的解决方案是在目标构建选项-DTARGET_OS_IPHONE的" Other C Flags"部分添加" " .
fjo*_*him 14
最简单的解决方案是#import <Foundation/Foundation.h>如果#if条件将语句移出并用AppKit替换Cocoa,如下所示:
#import <Foundation/Foundation.h>
#if TARGET_OS_IPHONE
#import <UIKit/UIKit.h>
#else
#import <AppKit/AppKit.h>
#endif
Run Code Online (Sandbox Code Playgroud)
Foundation伞头导入NSObjCRuntime头,后者又导入TargetConditionals头.
| 归档时间: |
|
| 查看次数: |
13580 次 |
| 最近记录: |