LoginSignup
0
0

Debugビルドの時だけApp Transport Securityを無効化する (Xcode13以降用)

Last updated at Posted at 2023-12-09

iOSプロジェクトのビルド設定の整備において、Debugビルドの時だけApp Transport Securityを無効化したい時があります。

で、この対応方法が難儀なものであるのが、以前までの私の認識でした。1

現在のビルド設定事情を調べたところ、Xcode13以降で作成したプロジェクトならば、info.plistのファイルは追加分の設定を行う役割となっています。2
これによりタイトルの課題は、以下の方法で簡単に対応可能なようです。

  • プロジェクト設定に デバッグ用の info.plist を追加する。3 (例: debug-info.plist)
  • debug-info.plist について App Transport Securityの無効化設定を追加する。4
  • アプリTargetの Build Setting > Package > Info.plist File について Debugビルドの項目に debug-info.plist を指定する。
    • ※ info.plistの追加設定が無いビルドの場合は、空欄で構わない。

検証
http://yahoo.co.jp」 などを使って通信させてみると、狙い通りにATS無効化が反映できている事が確認できました。

補足
なお、このサイトによると、info.plistのファイルによる設定追加は、全てのキーに対して有効では無いようです。

他の設定値を試される場合は、設定が反映されているかに注意が必要そうです。

  1. Q. ATS を Debug ビルドでだけ無効にしたいのですが...

  2. Xcode13 Release Notes

  3. Xcode 13以上でInfo.plistを安全かつ簡単に作成する

  4. 「http://」のAPIを実行できるようにする(Swift)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0