iOS9でDebugビルドのみATSを無効化する

  • 32
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

Run Scriptに以下のような処理を追加すればいい。

if [[ $CONFIGURATION == "Debug" ]]; then
    defaults write ${TARGET_BUILD_DIR}/Debug.app/Info.plist "NSAppTransportSecurity" -dict-add NSAllowsArbitraryLoads -bool yes
fi

Debugでビルド時はlocalhostに立てたAPIサーバと通信させたい時など、特定のconfigurationのみhttp通信を許容したいとき便利。

Info.plistの設定項目をconfig毎に切り替えるのは環境変数を使う手があるけど、設定の値がString型になってる必要がある。なのでビルド成果物のコピー先でplistを書き換えるようにしてる。