Tíquete #36981

iOS版 64bit対応

: 2017-02-12 02:51 Última Atualização: 2017-02-12 10:31

Relator:
Dono:
Estado:
Fechado
Prioridade:
5 - Medium
Gravidade:
5 - Medium
Resolução:
Fixed
Arquivo:
Nenhum

Details

iOSアプリは2015年6月1日以降、iOS 8 SDKによるビルドと64bitサポートが必須となったため、 iOS版を64bit対応させる。開発環境を次のように変更する。

変更前:OS X 10.8.5 (Mountain Lion), Xcode 4.6.3
変更後:OS X 10.12.3 (macOS Sierra), Xcode 8.2.1

Ticket History (3/8 Histories)

2017-02-12 02:51 Updated by: yknk
  • New Ticket "iOS版 64bit対応" created
2017-02-12 02:53 Updated by: yknk
  • Marco Update from (Nenhum) to Version 1.1.0 for iOS (fechado)
  • Componente Update from (Nenhum) to MIDITrail Ver.1.1.x for iOS
  • Dono Update from (Nenhum) to yknk
2017-02-12 02:54 Updated by: yknk
Comentário

ビルド設定変更

Architectures

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に変更する。

Xcode7変更時

  • Target 'MIDITrail' - Adopt "Product Bundle Identifier" build setting
  • Project 'MIDITrail' - Upgrade Base SDK Configuration to Latest iOS (iOS 9.1)
  • Project 'MIDITrail' - Enable Recommended Warnings
  • Project 'MIDItrail' - Automatically Select Architectures
  • Project 'MIDITrail' - Turn on "Build Active Architecture Only" When Debugging
  • Project 'MIDITrail' - Trun on "Enable Testability" When Debugging

Xcode8変更時

  • Target 'MIDITrail' - Update iOS Deployment Target
  • Project 'MIDITrail' - Update iOS Deployment Target
  • Project 'MIDITrail' - Enable Recommended Warnings
2017-02-12 02:56 Updated by: yknk
Comentário

型の変更

unsigned long型

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に 変更する。

2017-02-12 02:56 Updated by: yknk
Comentário

廃止APIへの対応

MTFontTexture::CreateTexture

NSString::sizeWithFont を NSString::sizeWithAttributes に変更。 NSString::drawInRect withFont: lineBreakMode: alignment: を NSString::drawInRect withAttributes: に変更。

MIDITrailApp::openMainView

UIViewController::presentModalViewController animated: を UIViewController::presentViewController animated: completion: に変更。

MIDITrailApp::closeMainView

UIViewController::presentModalViewController animated: を UIViewController::presentViewController animated: completion: に変更。

MTMainViewCtrl::onHelpButton

UIViewController::presentModalViewController animated: を UIViewController::presentViewController animated: completion: に変更。

ビュークラス全般

UIViewController::viewDidUnload を削除。

2017-02-12 02:56 Updated by: yknk
Comentário

その他修正

MTFirstPersonCam::_TransformEyeDirection

警告回避のため、abs()をfabsf()に変更。

MTFirstPersonCam::_TransformRolling

警告回避のため、abs()をfabsf()に変更。

OGLPrimitive::Draw

GL_UNSIGNED_INT が未定義になったため GL_UNSIGNED_INT_OES に変更。

2017-02-12 02:57 Updated by: yknk
  • Ticket Close date is changed to 2017-02-12 02:57
  • Resolução Update from Nenhum to Fixed
  • Estado Update from Aberto to Fechado
2017-02-12 10:31 Updated by: yknk
Comentário

ステータスバー非表示

iPadでMIDITrailを実行すると、メインビューでステータスバーが表示されてしまうため、 以下の修正を適用した。

MTMainViewCtrl::prefersStatusBarHidden

ステータスバー非表示メソッドを追加。常にYESを返却する。

Attachment File List

No attachments

Editar

Please login to add comment to this ticket » Login