iOSアプリ64bit版に対応する

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

ADMAGEユニットの小林です。

iOS8がリリースされました。
いろいろ話題になったアップデートでしたが、開発者にはすでに次のイベントが待っています。

iOSアプリ64bit版に対応する

【iOSアプリは64bitサポートが必須となります】

先日developer newsにて以下の様な告知が有りました。

64-bit and iOS 8 Requirements for New Apps
(出典:https://developer.apple.com/news/?id=10202014a

要約すると、2015年2月1日以降に新しくアップロードするアプリは64bitサポートを同梱しなさい、ビルドはiOS8 SDKで行いなさいと言うことのようです。

iOSアプリの64bitサポートはiPhone5sが出た当初から行われているので今更驚くことではないのですが、必須となることでの注意事項などを少しまとめておければと思います。

【Xcodeで64bitサポートアプリを作成する】

Xcodeで64bitサポートアプリを作成する方法は難しくありません。
プロジェクト設定の「Build Setting」にある「Architecture」の項目にarm64を含めるだけでよいです。
おそらく「Standard architecture(armv7, armv7s, arm64)」というものがあります。
こちらを設定して下さい。
ここでいうarchitecture(アーキテクチャ)はCPUを指しています。

armv7:iPhone4s, armv7s:iPhone5, arm64:iPhone5s、iPhone6にそれぞれに対応している形になります。

【64bit版アプリ作成時の注意点】

64bit対応アプリを作成する際に気をつけなければいけない点がいくつか有ります。
念のためそれらも記載しておきます。

[データ長の違い]

32bit、64bitではデータ長が異なります。
正しい数字は公式のドキュメントを参照していただければと思いますが32bit、64bitアプリ間でのやりとりには注意が必要です。
同じデータ型を扱っていても、実際に扱えるデータ長が異なるのでオーバーフローを起こしたりする原因となります。

[アプリの肥大化]

32bit、64bit両対応版のアプリを作成した場合、アプリ自体のサイズが大きくなることが懸念されます。
ストレージが巨大化したとはいえ有限であるストレージを圧迫しますしネットワークを介してダウンロードする際に、サイズが大きいことが懸念材料となりえます。

これはBuild Settingsで指定したアーキテクチャごとにそれぞれ実行ファイルを作成し、同梱版としてアプリを作成するという仕組みに寄るものです。
64bitCPUのみに対応したアプリとして、他の対応を切り捨てるのであればサイズの肥大化は防げますが、現在でもiPhone5を使っている方はそれなりにおり、単純に切り捨てることが難しいです。

他にも注意点はあるのですが、全てを記載していたら長くなってしまうので公式ドキュメントを参照して、必要な対応を取っていくと良いかと思います。
Cocoa Touch – 64ビット移行ガイド

64bitのサポートを必須とした背景には何があるのかが少し気になります。
32bitCPUのiPhone5(5c)以前の端末に関しては今後扱いづらくなるのでは?と思います。

Appleにかぎらず、こういった重要な変更をしれっと言ってくるので、今後もアンテナを巡らせて、なるべく先手を取って行きたいと思います。




広告システムについてのお問い合わせやご相談、パッケージ製品の詳細はこちらからどうぞ。
http://admage.jp/
アプリ計測SDK admage for Appのお問い合わせ・詳細はこちら。
http://apptizer.jp/

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

コメント

コメントを残す

*