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をいじると同じ設定ができます。
関連記事
-
-
WSCoachMarksViewをSwiftで使う場合の手順
Objective-Cで記述されてるライブラリ全般に当てはまることもあるんですが、個別でやることも含
-
-
Bitbucketの画面の日本語化/コミット時に同時プッシュを行う
前回の記事の続きで、Bitbucketの画面の日本語化と、Xcodeでコミットするときに同時にpus
-
-
UILabelの改行をInterfaceBuilderから入力する
UILabelの行数は任意に設定できて、「0」を指定すると行数を限定しないで(UILabelのbou
-
-
ソースコードからStoryboardにアクセスする
複数のStoryboardを利用して、自分以外のStoryboardに遷移させるような展開をしたい場
-
-
UITableViewCellのロングタップ
UITableViewCellをロングタップしたときに、タップされたセルを認識しつつメニューを出した
-
-
Size ClassとUIViewController.view
タイトルの件でちょっとハマったことがある上に、特に日本語情報もStackOverflowからも情報が
-
-
画面回転をしたあとに、UITextViewの先頭を表示する
回転によりサイズが可変するUITextViewで、縦向き(ポートレイト)から横向き(ランドスケープ)
-
-
App Storeのページにアプリケーションから直接アクセスする方法
去年(2013年)の秋ごろ、iOS7の出始めの時期に書かれたblog記事などを参考にすると、iOS6
-
-
iOS9でURLスキームを登録する
私事ですが、iOS8から対応はしたいということで検証用に使っている自分のiPhoneもiOS8でがん
-
-
CALayerの管理
CALayerはNSKeyValueCodingを実装している(Core Animation Ext
- PREV
- バージョンアップ版があることを通知する
- NEXT
- Realmで==ができなかった
