3 回答
TA贡献1943条经验 获得超7个赞
已过时SWIFT 4.1。使用#if targetEnvironment(simulator)代替。资源
要在Swift中检测模拟器,您可以使用构建配置:
在Swift编译器-自定义标志>其他Swift标志中定义此配置-D IOS_SIMULATOR
在此下拉列表中选择任何iOS模拟器SDK下拉列表
现在,您可以使用以下语句来检测模拟器:
#if IOS_SIMULATOR
print("It's an iOS Simulator")
#else
print("It's a device")
#endif
您也可以扩展UIDevice类:
extension UIDevice {
var isSimulator: Bool {
#if IOS_SIMULATOR
return true
#else
return false
#endif
}
}
// Example of usage: UIDevice.current.isSimulator
TA贡献1735条经验 获得超5个赞
基于@WZW的答案和@Pang的评论,我创建了一个简单的实用程序结构。此解决方案避免了@WZW的回答产生警告。
import Foundation
struct Platform {
static var isSimulator: Bool {
return TARGET_OS_SIMULATOR != 0
}
}
用法示例:
if Platform.isSimulator {
print("Running on Simulator")
}
- 3 回答
- 0 关注
- 692 浏览
添加回答
举报