[IOS] TARGET _ IPHONE _ SIMULATOR 使用

TARGET _ IPHONE _ SIMULATOR 使用

最近使用 APNs,取得 Device Token 後做了一段驗證,檢查是否取得了 Device Token,但在模擬器上是取不到這 Device Token,因此在模擬器上會跳過這段驗證。

但是在使用上邏輯搞不太定,雖然不影響使用。

#if TARGET_IPHONE_SIMULATOR
    // xxx
#else
    // ooo
#endif

if else的使用我想我應該沒理解錯誤吧。

  • 結(jié)果為真:進xxx這段
  • 結(jié)果為假:進ooo這段

在模擬器上TARGET_IPHONE_SIMULATOR回傳值為1,表示是模擬器,但是在模擬器上會進 // ooo 這段,搞得我好亂?。?!

2017/08/10更新

發(fā)現(xiàn) TARGET _ IPHONE _ SIMULATOR 回傳的數(shù)值其實是不穩(wěn)定的,具體原理不是很懂,不過找到替代方案了。

在 Targets > Build Settings > Other Swift Flags > debug 中

新增一個 Any iOS Simulator

並為其加上 "-D IOS_SIMULATOR" (不需加引號)

使用上如下

#if IOS_SIMULATOR
    // is a simulator
#else
    // not a simulator
#endif
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容