iOS版 64bit対応
Targets:MIDITrail / Architectures / Architectures →"Standard architectures (armv7, arm64)"に変更
参考:armv7(32bit)はiPhone 3GS以降、arm64(64bit)はiPhone 5s以降
Xcodeのバージョン変更時に提示された推奨設定を受け入れた。 iOS Deployment Targetが8.0に変更されたため、MIDITrailのサポート対象iOSは5.0から8.0に変更する。
unsigned longは32bit環境で4byte、64bit環境で8byteになる。 MIDITrailのソースコードはunsigned longを大量に利用しており、影響が大きい。
このためunsigned longを基本的にすべてunsigned intに変更する。 unsigned intは32bit,64bit環境のいずれでも4byteである。
OpenGL APIインターフェースでGLsizei型が指定されているパラメータについて、 unsigned longを利用していた場合は、unsigned intではなくGLsizeiに変更する。
エンコーディングIDをunsigned longで処理していた箇所は、NSStringEncodingに 変更する。
NSString::sizeWithFont を NSString::sizeWithAttributes に変更。 NSString::drawInRect withFont: lineBreakMode: alignment: を NSString::drawInRect withAttributes: に変更。
UIViewController::presentModalViewController animated: を UIViewController::presentViewController animated: completion: に変更。
UIViewController::presentModalViewController animated: を UIViewController::presentViewController animated: completion: に変更。
UIViewController::presentModalViewController animated: を UIViewController::presentViewController animated: completion: に変更。
UIViewController::viewDidUnload を削除。
警告回避のため、abs()をfabsf()に変更。
警告回避のため、abs()をfabsf()に変更。
GL_UNSIGNED_INT が未定義になったため GL_UNSIGNED_INT_OES に変更。
iPadでMIDITrailを実行すると、メインビューでステータスバーが表示されてしまうため、 以下の修正を適用した。
ステータスバー非表示メソッドを追加。常にYESを返却する。
iOSアプリは2015年6月1日以降、iOS 8 SDKによるビルドと64bitサポートが必須となったため、 iOS版を64bit対応させる。開発環境を次のように変更する。