LoginSignup
2
4

More than 5 years have passed since last update.

実機ビルドのみでアプリ容量がすごいスピードで増える場合に疑う設定

Posted at

状況

iPhoneに実機ビルドしながら開発をしていたら、突然iPhoneから「容量不足」のアラートが。

「ストレージとiCloudの使用状況」の設定を見ると、自分が開発しているアプリが一番上に表示され、「書類とデータ」の項目には数百MB~数GBの容量が…

また、Archiveしたアプリ(TestFlight経由/AdHoc問わず)ではその現象が発生しませんでした。ビルド設定を疑い、Runのビルド設定をDebugからReleaseにしてみても、Runの場合は発生します。

原因

メモリに関する動作をすべてロギングする設定がXcodeにはあります。
メモリリークなどを追いかける際に使用する設定なのですが、このログがアプリの保存領域(tmp)に格納されるようです。

[Edit Scheme...] > Run > [Diagnostics] > Logging > [Malloc Stack]

ここにチェックが入っていると、実機ビルドしたアプリを動かすだけで、端末にどんどんログが吐き出され、容量を圧迫していきます。

tmpの中身をすべて削除するようなコードを試しにアプリに実装してみると、容量が改善することもわかります。

今回、デバッグ時にこのチェックを入れていたため、容量がふくらんでしまっていたため、チェックを外すことで状況が改善しました。

さいごに

通常、デバッグ時のみ発生する現象はビルド設定を疑うところですが、

  • ビルド設定(Debug/Release)や最適化レベルを問わず発生する
  • Archiveした場合は発生しない

時は、Schemeの不要な項目にチェックが入っていないか確認しましょう。

2
4
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
2
4