iOSシミュレータの帯域制限をテストする
iOSシミュレータで通信帯域制限をテストしたいと思ったんですが、Xcode8からXcode7.xとはちょっと違うことに気がついたのでメモってみます。
実機の場合は変わってないし、楽なんですが、シミュレータの場合はiOSシミュレータに同様の設定がないので、Mac側で設定をする必要があります。
手順
ツールのダウンロード
「Additional Tools for Xcode 8」をダウンロードします。従前は「Network Link Conditioner」という名前だったんですが、これが変わってるんですね。50MB級のツール群のdmgファイルです。
ダウンロードページはXcodeのOpen Developer Tool → More Developer Tools… から飛ぶのが一番早いでしょう。Developer Centerのダウンロードページに飛びます。 検索条件に「for Xcode」が入った状態でリストが出てくるので、絞込見直すか、ブラウザの検索機能で「Additional Tools for Xcode 8」を探すといいでしょう。


帯域制限ツールのインストールと設定
DMGファイルを開くと、色々なツールがありますが、Hardwareフォルダの「Network Link Conditioner.prefPane」ファイルをダブルクリックします。このファイルはMacの「設定」に項目を追加するファイルなのでインストールの確認を求められるので、インストールします。

インストールすると、「システム環境設定」に「Network Link Conditioner」の項目が増えます。

(注:これはOS全体の通信にかかると思われるので、デバッグ中にSkypeその他のチャットワークに影響が出ると思われ、その点には注意が必要だと思います)
細かい設定方法は省きますが、設定をOnにするといろいろな通信環境(帯域の制限、パケットのロス率の設定)を行うことができます。
通常は3G(概ね700kbps)でのシミュレートすれば事足りるような気がしますが、日本の帯域制限を考えると300kbpsの帯域設定を作るほうがいいかもしれません。
実機の場合
「設定」アプリの「デベロッパ」項目に「NETWORK LINK CONDITIONER」セクションがあるので、そこのStatusをいじると同じ設定ができます。
関連記事
-
-
UITableViewのヘッダに小文字を入れる
UITableViewのセクションヘッダをStoryboardでカスタマイズするという話題を以前掲載
-
-
UITableViewのセルセパレータが画像の下部分だけ切れる場合の対応
iOS7のUItableViewCellだと、UITableView.imageViewに画
-
-
UITableViewのセクションヘッダをStoryboardで作る時の参考
UITableViewのセクションヘッダをカスタムして作る際に、セルと同様にプロトタイピングするため
-
-
UILabelの改行をInterfaceBuilderから入力する
UILabelの行数は任意に設定できて、「0」を指定すると行数を限定しないで(UILabelのbou
-
-
Bitbucketの画面の日本語化/コミット時に同時プッシュを行う
前回の記事の続きで、Bitbucketの画面の日本語化と、Xcodeでコミットするときに同時にpus
-
-
FormSheetでModalに表示させたビューの高さを変更する
iPadにおいて、FormSheetでModal表示させたビューの高さを変えたい場合の記事。 この
-
-
RealmのList
とArray の相互変換によるマップ Realm+ObjectMapperを使って、RealmのオブジェクトをJSON変換してたのですが
-
-
CALayerの管理
CALayerはNSKeyValueCodingを実装している(Core Animation Ext
-
-
WSCoachMarksViewをSwiftで使う場合の手順
Objective-Cで記述されてるライブラリ全般に当てはまることもあるんですが、個別でやることも含
-
-
アプリ内で自動スリープの設定を無効化する
「設定」アプリ内で設定したスリープ時間設定を無効にするためのコード。 アプリがバックグラウンドにな
- PREV
- バージョンアップ版があることを通知する
- NEXT
- Realmで==ができなかった
