先日iOS4のAPI変更点ドキュメントを読んでいたのですが、せっかくなのでまとめて見ました。
◆追加フレームワーク一覧
Accelerate, AssetsLibrary, CoreMedia, CoreMotion, CoreTelephony, CoreVideo, EventKit, EventKitUI, iAd, ImageIO, QuickLook
ドキュメントには追加と書いてないけどたぶんGameKitとMessageUIも対象
■Accelerateフレームワーク(新規)
DSPを使ったFFTなど高速演算系みたい
■AddressBookフレームワーク
APIにグループ機能が追加の模様
■AssetsLibraryフレームワーク(新規)
写真やビデオを管理するフレームワークのよう。これでフォトライブラリにアクセスできるのかな?
■AudioToolBoxフレームワーク
アプリ実行中にメール着信音などの音が割り込まれたことを検出するAPIが追加になった模様
■AudioUnitフレームワーク
APIの追加削除あり。詳細不明
■AVFoundationフレームワーク
iMovieで使われていそうなクラスが大量追加されています。
AVCaptureDeviceクラスにはAVCaptureTorchModeOnとかあって興味深いw
■CFNetworkフレームワーク
CFProxySupport, CFSocketStream クラス追加。プロキシやVoIP関係ですね
■CoreAudioフレームワーク
オーディオチャンネルのタグ種類にDTS関係、MPEG4AAC追加など
■CoreDataフレームワーク
OSとデバイスのバージョン番号の定義増えただけかな?
■CoreFoundationフレームワーク
CFCalendar, CFData, CFDateFormatter, CFLocale, CFMessagePort, CFPropertyList, CFRunLoop, CFSocket, CFString, CFStringEncodingExt, CFTimeZone
CFURL, CFURLEnumerator, 以上クラスに変更あり。その中でもCFURLクラスとかはかなり増強。
■CoreGraphicsフレームワーク
CGBitmapContext, CGColorSpace, CGContext CGPDFContext CGPath クラスに変更あり。
フォントのスムージングやサブピクセルの指定などが追加されている模様
■CoreLocationフレームワーク
CLRegionクラス追加。これは地域を登録しておいてユーザーがこのエリアに入ったらイベント発生するものらしい
あと、CLError, CLLocation, CLLocationManager, CLLocationManagerDelegate, に変更あり
■CoreMediaフレームワーク(新規)
ローレベルのAVメディア制御をするものらしい。バッファリング制御とかが充実している
■CoreMotionフレームワーク(新規)
加速度センサ、ジャイロセンサをもとにデバイスの動きを扱うものらしい。
■CoreTelephonyフレームワーク(新規)
電話に関する情報を扱うものらしい。キャリアが使いそうな。
■CoreTextフレームワーク
定数追加削除レベル
■CoreVideoフレームワーク(新規)
動画の形式(QuickTime, OpenGLほか)によらず動画のフレームを扱うことができるものらしい
■EventKitフレームワーク(新規)
カレンダーとイベント情報を扱うものらしい。カレンダーの予定とかいじれるみたい
■EventKitUIフレームワーク(新規)
カレンダーイベントを表示するためのビューコントローラ
■Foundationフレームワーク
多数変更あるけど割愛w
■GameKitフレームワーク(新規?)
これも新規じゃないのかな? ゲームセンターの実装用だと思われる。
■iAdフレームワーク(新規)
iAD。広告バナーを扱うものらしい。iAdってバナーなのか!
■ImageIOフレームワーク(新規)
詳細不明だけどサムネールを含む複数画像を扱うものらしい
■MapKitフレームワーク
アノテーションのドラッグ機能公開、エリアを示す円形アノテーション追加、マップ上の地点やエリアを扱う機能強化、オーバーレイ機能追加、図形描画機能追加、など
■MediaPlayerフレームワーク
テンポ情報などの追加。ストリーミング動画に埋め込まれた時間同期コンテンツ関係追加
■MessageUIフレームワーク(新規?)
これも新規?。SMSやメールのようなメッセージをやりとりする標準的なUIを提供するビューコントローラ
■OpenALフレームワーク
定数追加レベル。かな?
■OpenGLESフレームワーク
voidじゃなくてGLvoid型使うようになったっぽい。その他フレームバッファ関連とか追加。
■QuartzCoreフレームワーク
アニメーションにてスプライン補間が使えるようになったりとか。
■QuickLookフレームワーク(新規)
いろいろなフォーマット(iWorkやMSOffice)の文書を表示できる。
■Securityフレームワーク
小変更のようですが詳細不明。
■SystemConfigurationフレームワーク
Wifiネットワーク検出動作を扱うCaptiveNetworkクラス追加。など
■UIKitフレームワーク
・アクセシビリティ変更。UIActionSheet関係の定義ヘッダがUIAlert.h→UIActionSheet.hへ。同様にUIAlertView関係がUIAlertView.hへ。
・UIApplicationクラス。マルチタスク関係が追加されています。マルチタスク対応の胆です。
・UIBarButtonItemクラス:バーボタンのスタイルにUIBarButtonSystemItemPageCurl追加。
・UIBezierPathクラス:円弧追加。UIDataDetectorsクラス:アドレスとカレンダイベント追加。
・UIDeviceクラス:マルチタスクサポート有無の追加。UIEventクラス:演奏開始停止トラック前後などリモコン動作のイベント追加。など
以上! 簡単ながらiOS4 APIの変化点まとめでした!
ついでにiOS4対応のiTunes9.2の新機能について。iOS4との同期、iBooks対応、PDF文書管理、アプリフォルダ対応、バックアップ/同期の高速化、スクロールの高速化(なんのことだろう)
ゆうぞら