Iconfactory は,UIKit ベースのアプリケーションを MacOSX 用にコンパイル可能にする Chameleon プロジェクト をスタートさせた。
UIKit は,iOS デバイス上で動作するすべてのウィジェット指向アプリケーション用の,ユーザインターフェースとアプリケーション起動のためのフレームワークである。OSX でアプリケーション起動やユーザインターフェース機構として使用されている AppKit とは別のものだ。これら2つのオペレーティングシステムは構成が異なっているため (タッチに対してマウスあるいはトラックパッド,ウィンドウに対してフルスクリーン),Apple が最初のモバイルプラットフォームをローンチする時,AppKit (あるいはそのサブセット)を iOS に移植する,という案は選択肢になかった。
Chameleon はこの UIKit の OSX バージョンを提供することにより,iOS 用に記述されたソースを OSX で実行可能にする。(ただし再コンパイルが必要であることに変わりはない。Intel プロセッサ上で動作する OSX に対して,iDevice は ARM で動作しているからだ。) そうではあるがObject-C のアプリケーションロジックだけでなく UI ロジックについても,2つのプラットフォームでの再利用がこれで可能になる。
実装作業はまだ完了していない – 資料によると,
UIKit の実装作業は,おもに iOS バージョン 3.2 の UIKit をターゲットとしています。現時点ですべてではありませんが,相当な部分の実装が完了しています。3.2 より以降のバージョンの iOS に関するメソッドや振る舞いについても,一部は実装済みです。
UIKit を移植する試みはこれが初めてではない。たとえば,ParseKit の作者である Todd Ditchendorf 氏が以前に,アプリをデスクトップで動作させる UMEKit を開発している。
しかしながら Chameleon がそれらと違うのは,OSX アプリであるTwitterific を iOS から移植するにあたって,コードの 90% を再利用することができた,という実績があることだ。(プロジェクトチームによれば,UI 部分を除いたアプリの再利用率は 25-30 % のオーダだという。) 結果として,iOS と Mac の App Store 両方に対する同時リリースが実現された。
Chameleon のソースは GitHub で公開中である。