Ticket #36981

iOS版 64bit対応

Date d'ouverture: 2017-02-12 02:51 Dernière mise à jour: 2017-02-12 10:31

Rapporteur:
Propriétaire:
État:
Atteints
Priorité:
5 - moyen
Sévérité:
5 - moyen
Résolution:
Fixed
Fichier:
Aucun

Détails

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
  • Jalon Update from (Aucun) to Version 1.1.0 for iOS (atteints)
  • Composant Update from (Aucun) to MIDITrail Ver.1.1.x for iOS
  • Propriétaire Update from (Aucun) to yknk
2017-02-12 02:54 Updated by: yknk
Commentaire

ビルド設定変更

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
Commentaire

型の変更

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
Commentaire

廃止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
Commentaire

その他修正

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
  • Résolution Update from Aucun to Fixed
  • État Update from Ouvert to Atteints
2017-02-12 10:31 Updated by: yknk
Commentaire

ステータスバー非表示

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

MTMainViewCtrl::prefersStatusBarHidden

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

Attachment File List

No attachments

Modifier

Please login to add comment to this ticket » Connexion