UWPというフレームワークが搭載されたことで、開発者は容易にアプリを開発していける。しかし、モバイル市場で少数派のWindows OS向けに彼らが積極的にアプリを開発していくのかは非常に疑問だ。そこでMicrosoftが仕掛けた“飛び道具”が、iOSとAndroidのアプリを簡単にWindowsへ移植できるフレームワークだ。iOSやAndroidのアプリが動作できるように新たなサブシステムを用意した。
このフレームワークは、iOS向けでは「Project Islandwood」、Android向けでは「Project Astoria」と呼ばれる。Project IslandwoodはiOSで使われているObjective C/C++のコード、Project AstoriaはAndroidで使われているJava/C++のコードを、半自動的にUWPAのコードに変換してくれる。さすがに全てのコードを変換してくれるわけではなく、一部に開発者の手を入れる部分は残るが、コードの80〜90%は再利用できるようになっている。
実際に英King Digital Entertainmentは、同社がリリースしているCandy Crush SagaをWindows Phoneへ移植する際に、Project Islandwoodのアーリーバージョンを利用した。コードの書き換え自体は非常に少なく、移植も簡単だったようだ。
Microsoftは、Visual StudioにiOS用プラグインを用意し、iOS用アプリを直接コンパイルしてデバッグできるようにする。
Project IslandwoodやProject Astoriaは、単にコードのポーティングを可能にするだけでなく、iOSやAndroidのAPIをUWPのAPIにマッピングする機能を持つ。例えば、アプリ内部で地図を使っている場合は、Google MapをBing Mapに変換してくれる(強制ではない)。
またAnalyst Toolを用意することで、どの部分の書き換えが必要になるかなどをアドバイスしてくれる。
Copyright © ITmedia, Inc. All Rights Reserved.