3 回答

TA貢獻(xiàn)1943條經(jīng)驗(yàn) 獲得超7個(gè)贊
已過時(shí)SWIFT 4.1。使用#if targetEnvironment(simulator)代替。資源
要在Swift中檢測模擬器,您可以使用構(gòu)建配置:
在Swift編譯器-自定義標(biāo)志>其他Swift標(biāo)志中定義此配置-D IOS_SIMULATOR
在此下拉列表中選擇任何iOS模擬器SDK下拉列表
現(xiàn)在,您可以使用以下語句來檢測模擬器:
#if IOS_SIMULATOR
print("It's an iOS Simulator")
#else
print("It's a device")
#endif
您也可以擴(kuò)展UIDevice類:
extension UIDevice {
var isSimulator: Bool {
#if IOS_SIMULATOR
return true
#else
return false
#endif
}
}
// Example of usage: UIDevice.current.isSimulator

TA貢獻(xiàn)1735條經(jīng)驗(yàn) 獲得超5個(gè)贊
基于@WZW的答案和@Pang的評論,我創(chuàng)建了一個(gè)簡單的實(shí)用程序結(jié)構(gòu)。此解決方案避免了@WZW的回答產(chǎn)生警告。
import Foundation
struct Platform {
static var isSimulator: Bool {
return TARGET_OS_SIMULATOR != 0
}
}
用法示例:
if Platform.isSimulator {
print("Running on Simulator")
}
- 3 回答
- 0 關(guān)注
- 733 瀏覽
添加回答
舉報(bào)