我正在编写一些半便携式代码,并希望能够检测我何时编译iPhone.所以我想要类似的东西#ifdef IPHONE_SDK....
据推测,Xcode定义了一些东西,但我在项目属性下看不到任何东西,谷歌也没什么帮助.
使用TARGET_IPHONE_SIMULATOR宏会导致在am应用程序中定义相同的常量值.例如:
#ifdef TARGET_IPHONE_SIMULATOR
NSString * const Mode = @"Simulator";
#else
NSString * const Mode = @"Device";
#endif
- (void)applicationDidFinishLaunching:(UIApplication *)application
{
...
NSLog(@"Mode: %@", Mode);
...
}
Run Code Online (Sandbox Code Playgroud)
始终导致记录"模式:模拟器".我正在运行XCode 3.2.4,如果这有帮助的话.谢谢.
可能重复:以
编程方式检测应用程序是否正在设备或模拟器上运行
如何通过代码检测我的应用程序是在Simulator上运行还是在设备上运行
我正在使用Xamarin.iOS进行一个项目,我有一种情况,模拟器中的行为莫名其妙地在实际设备上不一样(设置mapview中心区域的方式不同).
我希望能够根据应用程序是在模拟器上还是在真实设备上运行,在运行时为变量设置值.我怎么能发现这个?
ios ×3
iphone ×3
cocoa-touch ×1
ipad ×1
macos ×1
objective-c ×1
xamarin ×1
xamarin.ios ×1
xcode ×1