Titanium SDK 3.4.0リリースノート超ざっくり訳
9月29日にGAがリリースされた、300以上の不具合対策と機能改善が行われたTitanium SDK/Studioの3.4.0のリリースノートについて、 若干今更感があり、さらにいつも以上にざっくりな訳をお届けしたいと思います。
詳細はソースを当たって頂ければと思います。
Alloy 1.5.0
データバインドの改善、XML・TSSマークアップの改善(ActionBarへのプロパティ設定、KeyboardToolbar、L()による多言語化)がされた一方、localStorage syncアダプタが非推奨になり、
代わりにproperties syncアダプタを使用することが推奨されています。
iOS and Xcode Support
iOS 8 SDKならびにXcode 6に対応しました。(Studio/CLIともに)
iOS 6.xで動作するデバイスについては公式保証されなくなるのでご注意ください。
後方互換性(SDK/CLI、Xcode/iOSの組み合わせ)については リリースノート内に表としてまとめられていますのでそちらをご覧ください。
Titanium CLI 3.4.0
最新のGAリリースを用いるsdk select stableコマンドが追加されたり、
config.jsonの取り扱いが改善されました。
新機能や挙動の変化について
Android
- このバージョンからアクティビティのライフサイクルイベント(create, destroy, pause, resume, start and stop)が非推奨になり、将来的に廃止されます。
代わりにon〜(
onCreateなど)という名前のプロパティが用意され、 こちらにコールバック関数を設定する形になります。 - 最初に開いたWindowの
exitOnCloseプロパティの初期値がtrueからfalseに変更になりました。 - HTTPClientに
fileプロパティが追加されました。 TabGroupのactivityプロパティをopenする前に設定できるようにありました。- Ti.UI.createWindowの引数として
themeプロパティを設定できるようになった。
iOS
- モーダルではないウィンドウ(あるいは
NavigationWindowやTabGroup内のウィンドウ)についてorientationModesプロパティで向きを強制するのは bad practice とみなされ、今後サポートされなくなります。 - 位置情報のパーミッション設定として
NSLocationWhenInUseUsageDescriptionもしくはNSLocationAlwaysUsageDescriptionというプロパティの設定をtiapp.xmlに設定する必要があります。 - ローカル通知についてはiOS 7以前は特に必要なかったユーザによる「許可」ですが、iOS 8では
Titanium.App.iOS.registerUserNotificationSettings()メソッドを使って登録し、ユーザ許可を求める必要があります。 - iPhone 6 / iPhone 6 Plusの解像度に適合した
667h@2x.pngや@3x.pngに対応しました。(対応表はリリースノートをご覧ください) Titanium.Media.showCamera()メソッドにautorotateプロパティ(デフォルトはtrue)が追加され、プレビュー時の回転制御が出来るようになりました。- iOS 8以降で
Titanium.Geolocation.authorizationイベントが追加され、設定変更時に発火するようになりました。 - Touch ID、対話式通知に対応しました。