読者です 読者をやめる 読者になる 読者になる

(:3[kanのメモ帳]

個人ゲーム開発者kan.kikuchiのメモ的技術ブログ。月木更新でUnity関連がメイン。

Unityから書き出すXcodeのプロジェクトを軽くする【Unity】【iOS】


このエントリーをはてなブックマークに追加

この記事でのバージョン
Unity 5.4.0f3


はじめに

UnityからXcodeのプロジェクトを書き出すと結構な重さになりますよね。

例えば空のUnityプロジェクトをビルドした場合でも646.5MBにもなります。


f:id:kan_kikuchi:20160830133105p:plain

これの原因はlibiPhone-lib.aというファイルで、こいつが600MB以上もあるんです。


libiPhone-lib.a

そもそもlibiPhone-lib.aってなんぞやって話ですが、以下のようなものらしいです。

libiPhone-lib.a ファイルは Unity ランタイムスタティックライブラリであり、RegisterMonoModules.cpp が Unity のネイティブコードを .NET でバインドします。


ようはUnityのコードをiOSで動かすためのライブラリです。多分。

ちなみにMacの場合は以下の場所にあります。


Unity/PlaybackEngines/iOSSupport/Trampoline/libiPhone-lib.a


上記のファイルを毎回コピーしてXcodeプロジェクトに追加しているため、

プロジェクトが重くなるわけです。


Symlink Unity Libraries

前置きが長くなりましたが、Xcodeのプロジェクトを軽くする方法のご紹介です!

やり方は簡単。ビルド時にSymlink Unity Librariesにチェックを入れ、

libiPhone-lib.aの実体をコピーせずにエイリアス(Windowsだとショートカット?)を作成する

ようにするだけ!


f:id:kan_kikuchi:20160831134341j:plain


これでlibiPhone-lib.aの分、サイズが減るようになります!

f:id:kan_kikuchi:20160831134352j:plain
f:id:kan_kikuchi:20160831134428p:plain


おわりに

余談ですが、Symlink Unity Librariesを有効にし、自分のマシン上でXcodeプロジェクトを書き出し、

かつ、そのXcodeプロジェクトをgitの管理に含め、UCBにあげた時にエラーが出たことがあったので、

注意が必要かもしれません。



また、プロジェクトが軽くなるだけで、リリースした時のアプリの容量は変わらない

点にも注意が必要です。