最近、米国アトランタにてXamarin Evolve 2014というイベントが開催され、Xamarinが作成したクロスプラットフォームツール群に関するニュースがいくつも発表された。Android Player(ハードウェアアクセラレーションを利用するAndroid シミュレータ)、Sketches(REPL的な環境)、そしてProfiler(C#コードのプロファイラ)である。
Android Player
Xamarinは、Android PlayerがAndroidエミュレータよりも高速であると喧伝している。x86版VirtualBox仮想マシンの中で動作し、ハードウェア仮想化支援技術(VT-xおよびAMD-V)とOpenGL 2.0を利用する。このシミュレータはWindows(7、8、8.1)とMac OS X(10.7以降)の両方で動作する。Visual StudioおよびXamarin Studioと統合されており、ADBに対応する他のアプリケーションをサポートしている。
通常のセンサー群以外にも、Android Playerはデバイスのバッテリーや位置情報をシミュレートする。また、コンピュータの前面/背面にあるカメラを、シミュレート対象デバイスのカメラとして使用できる。2点マルチタッチ、ピンチによるズーム、ドラッグ操作はキーボードのキー入力とマウスクリックの組み合わせによってサポートされる。Playerの制限事項の1つは、別のVMの中や、リモートデスクトップ/VNC経由では使用できないことだ。
まだプレビューのため、現在のAndroid PlayerはAndroid KitKat(API レベル19)と1種類のフォームファクタのみに対応している。しかし、他のバージョンおよび複数サイズのサポートは後日追加される予定である。
Sketches
SketchesはC#やF#の小さなコード辺を試すためのREPL的な環境を提供する。この環境でコードを書くと即座にコンパイルおよび実行され、結果がパネルに表示される。表示される値は基本的な数値型の変数だけでなく、色やアイコンやラベルといった、より複雑なものも表示される。Xamarin.Formsのように複雑なコードが含まれている場合は、SketchesをiOSやAndroidのシミュレータ内で実行することもできる。
Profiler
Xamarin ProfilerはC#のコード分析ツールであり、アプリケーションのパフォーマンスを観測してメモリーリークやボトルネックを見つけることができる。メモリの使用状況を追跡してスナップショットを採取すれば、後から分析することで、呼び出し階層を視覚化したり、サンプルを採取して時間を浪費している箇所を見つけ出したりできる。
ProfilerはXamarin StudioとVisual Studioの両方に統合されている。Androidアプリケーションの性能を解析するには、Xamarin.Android 4.18以降が必要である。