小编典典

如何以编程方式确定我的应用程序是否在 iphone 模拟器中运行?

all

正如问题所述,我主要想知道我的代码是否在模拟器中运行,但也有兴趣了解正在运行或正在模拟的特定 iphone 版本。

编辑:我在问题名称中添加了“以编程方式”这个词。我的问题的重点是能够根据正在运行的版本/模拟器动态包含/排除代码,所以我真的在寻找可以为我提供此信息的预处理器指令之类的东西。


阅读 107

收藏
2022-04-29

共1个答案

小编典典

它位于“有条件地编译源代码”下的 SDK 文档中

相关定义为TARGET_OS_SIMULATOR,定义在iOS框架内的/usr/include/TargetConditionals.h中。在工具链的早期版本中,您必须编写:

#include "TargetConditionals.h"

但这在当前(Xcode 6/iOS8)工具链上不再需要。

因此,例如,如果你想检查你是否在设备上运行,你应该这样做

#if TARGET_OS_SIMULATOR
    // Simulator-specific code
#else
    // Device-specific code
#endif

取决于哪个适合您的用例。

2022-04-29