【问题标题】:Xcode incorrectly "recognizing" iOS Simulator as actual DeviceXcode 错误地将 iOS 模拟器“识别”为实际设备
【发布时间】:2017-08-29 00:53:52
【问题描述】:

我正在使用相机并想检查我使用的是 iOS 模拟器还是实际设备,所以我将以下语句放入我的代码中:

    #if IOS_SIMULATOR
        print("It's an iOS Simulator")
    #else
        print("It's a device")
    #endif

但是,当我在 iOS 模拟器中运行设备时,它实际上会打印出“It's a device”。

相反。我可以检查一下其他 Xcode 设置或标志吗?

似乎我会选择一些东西说“即使它是模拟器总是像设备一样运行”你知道吗?

【问题讨论】:

  • 为什么不输入代码来简单地检查相机是否存在?似乎是最好的编码方式。
  • @dfd 好点,这似乎是一个更好的方法。我想我在想,如果是模拟器,我需要相机照片库,也许我在相机和照片库分开时将它们混合为一个。
  • 我知道以前的 iPad 没有摄像头,我相信 iPod touch 设备可能没有。我有代码使用 UIImagePickerController 来检查相机,如果你愿意,可以发布它。

标签: ios swift ios-simulator


【解决方案1】:

我不确定您从哪里获得 IOS_SIMULATOR,但肯定不是来自 Apple。我建议您使用 Apple 的 API 来执行此操作。例如:

#include <TargetConditionals.h>

#if TARGET_OS_SIMULATOR
...
#else
...
#endif

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-02
    • 1970-01-01
    • 1970-01-01
    • 2020-03-08
    相关资源
    最近更新 更多