UnityのiOS 64bitビルド

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

iOS64bit対応

2015年2月審査提出分より、アプリの64bit化が義務付けられ、
各デベロッパーでは対応が進んでいるかと思います。

その中でも厄介なのが、ミドルウエアを使用した開発を行っているアプリ、
すなわちUnityでの64bit対応が待たれていたわけです。

幸いなことに、4.6.xでの対応をUnityサイドからコミットがあり、
ver.4.6.2とver.4.6.3にてIL2CPPの設定が追加され、
64bit版でビルドが可能になりました。

こちらの記事に関しましては、
Unity4.6.3のバージョンにて執筆させていただいております。

設定方法

設定は至って簡単!
反面ビルドがものすごく重い&時間がかかる!(笑)

1.Build Settingsを開いて、PlayerSettingを押下
2.iOSがセットされていることを確認
3.PlayerSettingタブ一番下のOther Settingにて下記内容を設定

BuildSettings

BuildSettingにPlayerSettingsの表示ボタンがあるので、
押下した後、Unityのタブにて詳細を設定

Build_Settings-5.png

PlayerSetting

BuildSettingsのボタンを押してもポップで出てこないので、
Unityに慣れてない方は「あれ?」ってなるポイント(笑)
エディッタ上のタブに表示されるのでご注意ください。
スクリーンショット_2015-02-26_15_35_35-3.png

Other Setting

ここで細かい設定をしていきます。
Other Settingのタブを広げたら、ちょっと下に移動しましょう。
Configurationがでてきます。

設定
Configuration>Scripting Backend>IL2CPPへ変更
Configuration>Architecture>Universal へ変更
Optimization>TargetiOSVersion>5.1 以降へ変更
Optimization>TargetiOSVersion>6.0 以降へ変更
Optimization>TargetiOSVersion>7.0 以降へ変更
→iPhone5sが初の64bitCPU(A7)のため、以下の端末を切る捨てる懸念あり。
→審査提出時にワーニングが出る。

スクリーンショット_2015-02-26_15_35_35-34.png

パッと見、IL2CPPの設定は理解できると思いますが、
Architecture、TargetiOSVersionは何の意味があるかの想定がつかないと思います。
以下で簡単に説明を記載しておきます。

Architecture

ここではXcodeでビルドする際の設定を行います。
今回64bit対応ということですが、まだ32bitもサポートするのであれば、
両方含んだ形でビルドする必要があります。
なので、Universalにする必要があるのです。
64bitのみでよければARM64で、
まだ32bitのみでよければ、ARMv7で大丈夫です。

TargetiOSVersion

以下の表を見ていただけると一目瞭然かと思われます。
基準としては、iPhone4Sの発売時のOSが5.0でしたので、
iPhone4sをサポートするのであればといった判断です。

iPhone 5s iPhone 5 iPhone 4S iPhone 4
指紋認証
ディスプレイ 4インチ 4インチ 3.5インチ 3.5インチ
チップ A7(64bit) A6(32bit) A5(32bit) A4(32bit)

以上となりますが、
まだUnity5の発売であったり、今後のAppleの動向でここの内容は変動します。
随時情報は更新させていただきます。