はじめに
現在製作中のUnity製アプリを試しにArchiveしアプリサイズを確認した所、予想以上に大きくなっており、こりゃ変だな?となっていた所、以下の記事を発見!
http://bribser.co.jp/blog/archive-with-xcode-6-occur-large-estimated-app-store-size/
マジか!
JKコンバットオンラインの場合
さっそく以前リリースしたアプリ、JKコンバットオンラインを確認すると
Organizer上では280.3MBなのに対し、ストア上では130MB!!
確かにAndroidの倍以上あるなーとは思っていたのですが、Unityの仕様だと勝手に判断していました…
cocos2d製では
ただ、cocos2dで作った時はそんな事は無かったような…と思い、これまた以前出したcocos2d製のローグライフを調べてみると
ストア上では45.7MB、Organizer上でも47.1MBと大して変わらず、むしろストアの方が減っています。
どうやらXcode6の問題というよりはUnityとXcode6の相性が問題らしい…
ちなみにUnityのバージョン4.6.2、Xcodeのバージョンは6.1.1です。
他の人も
この記事を書いた日にタイミングよくこのようなTweetがTLに流れて来ました.
http://twitter.com/venomin_/status/561149444104544256
聞いてみるとやはりXcode6+Unityだったようで、既にストアに出してるアプリもOrganizerとAppStoreでは容量が異なるそうです。(画像ありがとうございます!)
逆にこうなってない人がいるのか気になる所です…
正確なサイズを確認するには
表記が違うだけなので、リリース時はAndroidと大差ないサイズになります。
とは言え、サイズが確認出来ないのは不安&不便なので、ある程度正確なサイズを確認する方法を調べました。
一番楽なのはipaファイルを書き出す事ですかね。
ipaファイルを書き出す
Archiveしたファイルをipa形式で書き出すとストアのサイズに近くなります。
[Organizer]-[Archives]-[Archiveしたファイル]-[Export]で書き出しが行えます。
JKコンバットオンラインではストアでのサイズより小さくなっていたので注意が必要です。
iTCで確認
iTCにアップロードした後、[マイApp]-[任意のアプリ]-[ビルド]-[アップロードしたファイル]でファイルサイズを確認出来ます。
一度アップロードして、その反映を待たなければならないのが面倒ですが、ipaファイルを書き出した時よりストアのサイズに近かったです。
Xcode5を使う
Xcode5でArchiveを行えばこの問題は起こらないのですが、Xcode5とXcode6の競合(?)が起き、
framework not found Metal for architecture
とエラーが出て、そもそもビルドできなかったりします。
↑対処法はこちら
おわりに
JKコンバットオンラインは200MBを100MBに抑えるのは無理だなーという事で諦めていたのですが、リリース前にこれに気付いていれば100MB以内出来たかもしれない…!
それにしても、ストアに出てるアプリも大きくなるなら分かりますが、Organizerの表記だけ変わるの妙ですねー原因はなんなんでしょ。