PC USER Pro

Windows 10でAndroidとiOSアプリがそのまま動く!?――「Project Astoria/Islandwood」に迫る鈴木淳也の「Windowsフロントライン」(1/3 ページ)

» 2015年05月13日 19時00分 公開
※本ページはアフィリエイトプログラムによる収益を得ています

Windows10はあらゆるアプリを取り込む?

 Windows 10のアプリ実行基盤「Universal Windows Platform(UWP)」は、1つの実行ファイル(AppX)でPCからスマートフォン、果ては「IoT」などと呼ばれる組み込み型デバイスまでカバーし、すべて共通のアプリが動くようになっている。その概要は、Build 2015(米Microsoftの開発者会議)のリポートで触れた通りだ。

 またWindowsプラットフォームの特徴として、「さまざまな開発言語に対応」という点がある。従来から対応してきたC++やC#、Javaといった言語に加えて、「Hosted Web Apps」と呼ばれるHTML+CSS+JavaScriptで記述されたWebページをそのままUWPのアプリとして利用可能な仕組み、そして特に今回のBuild 2015で新たに発表された「Androidアプリ(apk)の実行」や「(iOSやMac OS Xアプリ開発に用いられる)Objective-Cのサポート」は、開発者だけでなく一般ユーザーも驚かせるニュースとなった。

 つまり、Windows 10ではAndroidアプリやiOSアプリが最小限の手間で動作することになり、人気のモバイルデバイス向けアプリがWindows 10搭載デバイス上で幅広く利用できるようになることが期待できるわけだ。さらに、これまでAndroidやiOSに比べて遅れていたWindowsアプリおよびアプリストアが、Windowsの膨大な動作デバイス数を追い風に、巻き返す可能性も秘めている。

 今回は、Androidアプリのポーティング(移植)を促す「Project Astoria」、iOSアプリのポーティングを促す「Project Islandwood」を中心として、こうしたUWPまわりの開発事情についてまとめていこう。

Windows 10においては、「Windows独自環境」「Webアプリ」「クロスプラットフォーム開発環境(ミドルウェア)」「他のモバイルプラットフォームのポーティング(移植)」の4種類のアプリ開発(実行)環境が用意されている。今回この中でも最も注目が高いのが「Other Mobile Platforms」で示される「Project Astoria(for Android)」と「Project Islandwood(for iOS)」だ

「Project Astoria」は日本でWindows Phoneを盛り上げるか?

 まずは比較的開発者やユーザーの関心が高い「Project Astoria」と呼ばれるAndroid apkの実行環境について触れていこう。これは、「Androidアプリを最小限の変更によって、Windowsで動作可能なアプリパッケージにする」というものだ。

 Astoriaの特徴は、Androidのアプリ配布パッケージである「apk」を、Windowsプラットフォーム上でほぼそのまま動作可能な点にある。この仕組みの利用にあたっては、Windowsカーネル上にProject Astoria専用のサブシステムが用意され、apkが「必要最小限の変更」のみで動作する。

一見すると似ているProject Astoria(for Android)とProject Islandwood(for iOS)だが、実際には使用するツールも仕組みもまったく異なる

 だがProject Astoriaにおける本当のポイントは、「UWPアプリ開発にあたってAndroidでの開発環境をそのまま流用できる」という点にある。本稿後半で解説するiOS向けのProject Islandwoodと後ほど比較してほしいが、「Google PlayにAndroidアプリを登録すると同時に、WindowsストアにもそのままUWPアプリを登録してください」というProject Astoriaの思想がよく現れていると言える。

 Project Astoriaの実現にあたり、MicrosoftはWindowsでのAndroidアプリ動作に必要な各種APIだけでなく、通知サービスをはじめとするクラウド側のサービスやセンサー関連、グラフィックスのサブシステムまで、すべてサブシステムとして用意し、apkの「ほぼそのままでの実行」を補助している。筆者が初めてこの仕組みの説明を聞いたときは「力業」とか「至れり尽くせり」といった感想を抱いたが、これがProject Astoriaだ。

 ただし注意点がいくつかあり、Androidアプリのルック&フィールをそのまま提供する一方で、Windows 10向けのUWPアプリとして配布するうえでWindowsストアの仕組みを利用しており、実際にProject Astoriaで配布されるパッケージはapkではなくAppXだ。

 またWindowsストアやWindows 10の仕組みを用いる以上、apkそのままではなく“ある程度”のコード変更が必要になる。具体的には「In-App Purchase」のようなアプリ内課金の仕組みや、Windows 10特有のライブタイルといった仕組みなどがそれだ。

 また本当の意味でWindows 10デバイス全般での動作を考えるならば、異なるスクリーンサイズやプラットフォーム環境でも最適な形で動作するようなコード改変が必要となる。つまり「最低限の労力でAndroidアプリをWindowsストアにも登録できるが、もしWindowsユーザーの評判を考えるならば、将来的なコード最適化が望ましい」といった感じだ。

記事後半のProject Islandwoodと比較してほしいが、Project Astoriaの実行環境は至れり尽くせりだ。まだ開発中とみられるものの、Androidで提供される各種APIのほか、通知などを含むクラウドサービスまでをもラッピングしてWindowsでのapk実行環境を用意する
Project Astoriaで配布されるアプリは「apk」ではなく、UWPの配布形式である「AppX」である点に注意したい。つまりストアの仕組みはWindowsストアのそれに則っている
ただし、完全にすべてのサービスがラッピングされているわけではなく、ストアの固有機能やライブタイルのようなWindows特有の機能については、コードの追加が必要になる
Project AstoriaはWindowsカーネル直上に専用のサブシステムが用意され、この上でapkを包含したAppXのUWPアプリが動作する形態を採る

 このように、Androidアプリの実行形式であるapkに少々の改変を加えたものが、AppXというUWPアプリの実行形式に変換され、Windowsストアに登録される形となるが、こうした作業はAndroidの開発環境にProject Astoriaのプラグインを挟む形で行える。

 Androidアプリ開発にEclipseなどのツールを用いるデベロッパーは多いと思うが、リソース管理を含めて既存環境にプラグインを追加するだけで、Windows 10向けのアプリ開発もできるのだ。

 DalvikやART上で動作するJavaコードだけでなく、NDKを使うようなC++ベースのネイティブアプリ開発にも対応しており、比較的パフォーマンスを重視する人気の高いメジャーアプリでのポーティングも容易となるだろう。

 まだProject Astoria自体は開発途上にあるという話も聞くが、今年後半に日本でもWindows Phoneベースのデバイスが市場投入されることを考えれば、スマートフォン向けアプリストアがほぼ壊滅的な日本市場において大きなセールスポイントになるだろう。Project Astoriaについては専用ページが用意されているので、興味のある方は確認してみてほしい。

冒頭でも紹介したが、基本的なリソースファイルやIDEはEclipseなど、Androidアプリの開発で使っているものをそのまま流用し、Project Astoriaのプラグインを当てることでUWPストアアプリを出力する。そのため、本来であれば「Visual Studio」の用意されていないMacなどでもアプリ開発が行える
       1|2|3 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

アクセストップ10

2024年03月29日 更新
  1. ミリ波レーダーで高度な検知を実現する「スマート人感センサーFP2」を試す 室内の転倒検出や睡眠モニターも実現 (2024年03月28日)
  2. Synology「BeeStation」は、“NASに興味があるけど未導入”な人に勧めたい 買い切り型で自分だけの4TBクラウドストレージを簡単に構築できる (2024年03月27日)
  3. ダイソーで330円の「手になじむワイヤレスマウス」を試す 名前通りの持ちやすさは“お値段以上”だが難点も (2024年03月27日)
  4. 「ThinkPad」2024年モデルは何が変わった? 見どころをチェック! (2024年03月26日)
  5. ダイソーで550円で売っている「充電式ワイヤレスマウス」が意外と優秀 平たいボディーは携帯性抜群! (2024年03月25日)
  6. 日本HP、個人/法人向けノート「Envy」「HP EliteBook」「HP ZBook」にCore Ultra搭載の新モデルを一挙投入 (2024年03月28日)
  7. 次期永続ライセンス版の「Microsoft Office 2024」が2024年後半提供開始/macOS Sonoma 14.4のアップグレードでJavaがクラッシュ (2024年03月24日)
  8. サンワ、Windows Helloに対応したUSB Type-C指紋認証センサー (2024年03月27日)
  9. 日本HP、“量子コンピューティングによる攻撃”も見据えたセキュリティ強化の法人向けPCをアピール (2024年03月28日)
  10. あなたのPCのWindows 10/11の「ライセンス」はどうなっている? 調べる方法をチェック! (2023年10月20日)
最新トピックスPR

過去記事カレンダー