iOS模擬各種網路狀態

weixin_34292287發表於2016-03-22

在iOS開發中我們有在各種不同網路狀態下測試app執行狀態的需求。蘋果給我們提供了在模擬器和真機狀態下,模擬各種網路狀態的軟體。

在模擬器中

蘋果提供的模擬網路狀態的工具官網地址
下載該工具需要登入Apple ID,根據需求選擇不同的版本。

1101711-9bf849a46c5fee8d.png

選擇如圖所示,點選Network Link Conditioner.prefPane執行


1101711-d5e109326d3b332c.png

在系統偏好設定中出現了該工具的選項


1101711-02e614754f808e10.png
1101711-8d0fda3f64b3a4d8.png
1101711-5ae8b5176feaf553.png

不同選項對應的網路狀態。

  • Preset Profiles 預設網路狀況
配置 說明
100%Loss 全丟包
3G 3G網路
DSL 電話線上網
Edge 2G網路
High Latency DNS 高延遲
Very Bad Network 網路狀況不穩定
Wifi Wifi網路
  • Custom Profiles 自定義網路狀況。
注意點:該工具是對全域性有效的,如果開啟了某一項網路狀態,對整個系統都有效。所以在測試完app後要及時關閉。
真機

蘋果在iOS系統中預置了網路除錯工具,但是隻有新增過測試裝置,並使用Xcode連線下裝置才能啟用.

  • Xcode未連線前


    1101711-9024a4a86663c5d5.PNG

Xcode連線後發現設定中多出來一項:開發者


1101711-ff98db5b84bc667b.PNG

選擇Status


1101711-7f8051da61922f96.PNG

裡面的選擇和在mac上的選項一樣。
1101711-cbe7e32170f34a96.PNG
注意點:開發者選項也是對全域性有效的,如果開啟了某一項網路狀態,對整個系統都有效。所以在測試完app後要及時關閉。
其他

模擬網路狀態還可以使用網路分析神器Charles。有關Charles的使用請移步這裡 個人認為蘋果自帶的工具已經給我們提供了足夠強大的功能,並且使用簡單方便。使用Charles豈不是殺雞用牛刀。當然Charles的強大是不可否認,在此不表。

相關文章