このページの本文へ

Linux/MacやiOS/Android対応の「Visual Studio Code」「Universal Windows Platform」など

プラットフォームの壁を越える!「Build 2015」新発表のポイント

2015年05月07日 06時00分更新

文● 塩田紳二 編集● 大塚/TECH.ASCII.jp

  • この記事をはてなブックマークに追加
  • 本文印刷

既存のAndroid/iOSアプリを簡単にWindows移植可能に

 昨年のVisual Studioの発表では、Windows Store向けに開発したコードをAndroid/iOSに移植する方法が提示されたが、今回の発表はその逆だ。一部ニュースでは誤って報じられているが、Windows 10にAndroid/iOSアプリを動作させる機能が加わるのではなく、Android/iOSアプリのソースコードを簡単にUWP向けに移植できるというわけだ。

 なお、Androidアプリ、iOSアプリをUWP対応にする手法は、それぞれ異なる。

 AndroidアプリのUWP対応は「Project Astoria」と呼ばれており、現在、限定プレビューが始まっている(応募には開発済みのAndroidアプリAPKが必要)。グーグルが提供する「Android Studio」(Androidアプリ開発用のIDE)に追加できるWindows Phoneエミュレータなどを用意することで、既存のAndroidアプリ開発環境を使ってテストやデバッグが行える。また、ライセンスの関係でUWPアプリでは利用できないサービスは、マイクロソフトのサービスに変更することも可能だ(たとえば「Googleマップ」から「Bingマップ」へ、など)。

 Project Astoriaでは、Android用のIDEも利用できるように、UWPアプリの.appxパッケージにAndroidアプリの.apkパッケージを入れる。また実行は、Windows 10側に作られた「Astoriaサブシステム」でAndroid互換の環境を作り、UWPのAPIに変換する仕組みとのこと。ただし基本的には、開発者が自身のパッケージをUWP向けにするためのもので、エンドユーザーが任意のAndroidアプリ(APK)を動かす目的のものではないようだ。

訂正とお詫び:Androidアプリ(Project Astoria)について、一部正確ではない記述がありましたので、以上の2段落を上記のとおり訂正いたします。(2015年5月7日)

UWP Bridgesを使うことで、Android用のJavaやC++コードからWindows Store配布用の.appxパッケージを作成できる

披露されたデモ。Android向けのホテル検索アプリ「Choice」が、Windows Phone上でも動作している(アイコンが同一)

 これに対して、iOSアプリのUWP対応は「Project Islandwood」と呼ばれる。これはVisual Studioで、iOS用のObjective-C(およびC++)コードのコンパイルや開発を可能にするもの。Xcode(iOSの開発環境)のプロジェクトをVisual Studioに直接読み込み、ビルドやデバッグが可能になる。こちらもUWP向けのライブラリ、ランタイムを併用するようだが、Visual Studio内で直接ソースコードを扱えるため、Visual StudioユーザーがiOSアプリをUWPに移植するような作業では(前述のAndroidよりも)有利と言える。

使いなれたVisual Studioで、iOS用のObjective-CやC++コード(ネイティブコード生成用)も.appx化できる

 残る2つのUWPアプリ対応手法についても説明しておこう。

 Windowsデスクトップ用アプリ(.NET/Win32アプリ)のUWP対応は「Project Centennial」と呼ばれている。これは、デスクトップアプリを“ラップ”して、UWPで動作させる仕組みだ。これも一部誤った報道がなされているが、Windows Storeでデスクトップアプリを直接配布できるようになるわけではない。

 UWPの対象には、デスクトップ環境のない旧Windows Phoneなども含まれており、単純に.NET/Win32アプリを配布することはできない。また、UWPとデスクトップでは、実行ファイル形式やAPI環境などがまったく異なっている(双方に固有のAPIがある)。既存のデスクトップ向け.NET/Win32ソースコードを再利用し、おそらくはデスクトップ互換のAPI環境をライブラリとして用意して、外側をストアアプリの形式としてパッケージを作成するものと思われる。あくまでも、.NET/Win32アプリの開発者が既存のソースコードを生かしつつ、アプリをUWP対応にするものだ。

 最後は、Webサイトを直接UWPアプリ化するもので「Project Westminster」と呼ばれている。具体的にはホストされているWebサイトを、オープンソースプロジェクトの「manifold.js」(Node.jsで動作するWebサイトをアプリに変換するツール)を使って、「Apache Cordova」(あるいは「PhoneGap」)でビルド可能なコードに変換する。つまり、Web/クラウドサービスを、そのままUWPや他のモバイルプラットフォーム向けアプリのコードベースとすることができる。

Webサイトを構成するHTMLやCSS、JavaScriptをそのまま.appxに変換できる。変換にはmanifold.jsを使い、Apache Cordova/PhoneGap用のコードが生成される

 なお、このmanifold.jsのようなHTMLベースのアプリ開発で利用できるデバッガシステムとして、2日目の基調講演では「Vorlon.js」が発表された。これは、Node.jsなどをベースに動作するもので、オープンソースになっている。

(→次ページ、GitHubとの提携により、Azure上に自社専用GitHubを展開可能に

カテゴリートップへ

アクセスランキング

  1. 1位

    ITトピック

    “VMwareショック”余波、IaaSベンダー撤退も/本音は「拒否したい」時間外の業務連絡/IT部門のデータメンテ疲れの声、ほか

  2. 2位

    データセンター

    首都圏のデータセンター枯渇、電力コストの高騰、エンジニア不足 課題から考える最新データセンター選び

  3. 3位

    デジタル

    なぜ大企業でkintoneの導入が増えているのか? DX推進と「脱・属人化」を実現するエンプラパートナーに聞いた

  4. 4位

    TECH

    【提言】「VPNの安全性」が通用しない時代 ZTNAへの困難な移行を経営層はサポートせよ

  5. 5位

    TECH

    自律的に動けないメンバーを持つくらいなら、一人で全部やったほうが幸せに働ける「管理職の憂鬱」に関する調査

  6. 6位

    TECH

    IT人材の約半数が「静かな退職」 正当に評価されないし心身の健康を優先

  7. 7位

    デジタル

    地方テレビ局が生成AIで記事作成を爆速に でもその裏で“10倍増えた”業務とは?

  8. 8位

    ビジネス

    トヨタ自動車はBacklogのAIアシスタントをこう使っている “現場の知見”を貯めるAI用データベースに

  9. 9位

    ビジネス・開発

    “保守地獄”からSEを解放する 富士通がソフトウェア改修の全工程をマルチエージェントで自動化

  10. 10位

    ビジネス

    行政DXを超え、デジタルで市民の力を引き出す“地域社会DX”へ 兵庫県豊岡市の挑戦

集計期間:
2026年02月24日~2026年03月02日
  • 角川アスキー総合研究所