iPhone,iPad/Androidに最適化されたWindowsアプリ開発術

Windowsアプリを簡単にモバイル対応する方法

生産性向上のためにモバイルデバイスを社員に配布する。ユーザーが自分のモバイルデバイスで企業ネットワークにアクセスする。まさにiPhoneやiPad、Android端末の登場によりスマートフォンやタブレットなどのモバイルデバイス市場が日本国内企業においても本格的に拡大しています。このような状況から企業は、これらのモバイルデバイスと、いかに向き合っていくかということを強いられている現状があります。

 

モビリティの重要性

企業システムは、この十数年Windowsを中心に作成/展開されてきました。
Windows上で動作するアプリケーションは、一般的にデスクトップOSの主流であるWindowsを基準に作成されているため、デスクトップ用途、つまり机の上で利用するのに適しています。

しかし、現地での視認が必要な在庫管理業務や整備マニュアルを閲覧しながらの機械メンテナンス作業、モバイルデバイスを見せながらのお客様対応など、デスクトップ用アプリケーションには不向きな業務が存在するのも事実です。

これらの机の上から一歩外にでた業務では、モビリティという概念が必要不可欠です。モビリティとは、在宅勤務や外出先からのメール閲覧などだけではなく、社内においても机の上以外の業務を、携帯性の高いモバイルデバイスなどを利用し、利便性を向上させることです。

一般的にWindowsアプリケーションでは、キーボード操作やマウス操作を前提としている場合が多いため、席を外して行うような業務には不向きだと言われています。そこでiPadやAndroid端末などをモバイル環境で利用するという流れは自然に生まれてくるのです。しかし、それらのデバイス上ではWindowsアプリケーションを動作させることが出来ないのは言うまでもありません。

それでは一体どのようにすれば良いのでしょうか?

 

ネイティブ・アプリケーション開発

iPadやiPhone、Android端末などの利用が進む中、企業アプリケーションをそれらで利用するためには、それぞれのOSプラットフォームにあわせたネイティブ・アプリケーションの開発を考えることから始まります。
しかし、現実問題として企業用途のタブレットに最適なアプリケーション開発は進んでいないのが現状です。

実際、企業でのタブレット利用を考慮する場合には、2大勢力が存在することを認識する必要があります。一つ目はiPadなどのApple社が提供するOSプラットフォームであるiOSです。もう一つはGoogle社が提供するOSプラットフォームであるAndroidです。

iOSは、MAC上でのみ提供されるSDKを利用してObjective-Cで開発する必要があります。Androidは、基本的にはJavaベースであり多くの場合、Eclipseという開発ツールを用いて開発します。また、Javaは中間コードを生成して動作させるアーキテクチャーであるためパフォーマンスが劣化する傾向にあるため、開発者はGoogle社が提供するAndroid NDK(Native Development Kit)を用いた開発を行ないます。

デスクトップ仮想化

モバイルアプリケーション開発の複雑な状況
これらの新たな言語や環境を熟知したうえで、それぞれのデバイス環境に最適なアプリケーションを作成する必要があるのです。しかし、企業向けにWindowsで開発してきた企業や開発者にとって、それらは敷居が高いのは言うまでもありません。

また、iOS、AndroidどちらのOSプラットフォームが主流になるのかもわからない状態であるだけでなく、Androidなどでは、その戦略から特に変化が激しい実情があります。
現在、Androidでは、2.Xから4.Xまでのバージョンが出回っており、それぞれにおいて若干、仕様が異なるために開発者が対応に苦労するだけでなく、せっかく作成したアプリケーションやデバイスが2年後に動作可能であるという保証はありません。

さらに、企業向けアプリケーションでは、各種ミドルウェア製品や帳票などエンタープライズ向け製品の利用を前提としており、特に帳票や印刷まわりなど各OSプラットフォームに対応したプリンタードライバーの提供状況や細かい帳票の制御などにおいてネイティブ・アプリケーション対応するのが難しいのです。

つまり、企業はそれぞれの進化にあわせて難しい開発を続ける覚悟が必要なのです。

このような状況であるため、企業はネイティブ・アプリケーションを作成するための新たな投資に対して消極的になっているのが現状であり、市場に出回っているネイティブ・アプリケーションの殆どがコンシューマ用途で占められているのも頷けます。

 

WindowsアプリケーションをiPhone,iPadやAndroid端末用に最適化

シトリックスでは、旧来よりWindowsアプリケーションを配信するCitrix XenAppという製品を提供しています。XenAppを利用することにより、Windowsで動作するアプリケーションをiPadやAndroid端末など様々なモバイルデバイスで利用することが可能になります。

しかし、そのままWindowsアプリケーションを配信するだけではユーザーの利便性の問題は解決されません。Windowsアプリケーションでは、マウスやキーボードを前提とした作りになっているためです。

そこで、それらの問題を解決するためにシトリックスが提供する製品が「Citrix XenApp 6.5 Mobility Pack」と「Citrix Mobile Application SDK for Windows」です。

Citrix XenApp 6.5 Mobility Packは、Citrix XenDesktop 5.6に標準装備されたCitrix XenApp 6.5の1コンポーネントとして提供されます。このコンポーネントを利用することにより、モバイルデバイスで使いやすい“タッチフレンドリー”なユーザーインターフェースを持ったデスクトップに即座に変換可能になります。

デスクトップ仮想化

Citrix XenApp 6.5 Mobility Pack 利用前
デスクトップ仮想化

Citrix XenApp 6.5 Mobility Pack 利用後
Citrix XenApp 6.5 Mobility Packを利用することで、Windowsで開発されたビジネスロジックはそのまま利用し、Citrix XenApp 6.5 Mobility Packが自動でユーザーインターフェースをモバイルデバイス用に変換してくれるのです。これにより、新たなモバイルデバイス用のネイティブ・アプリケーションを開発する必要はありません。

また、企業ではiOSやAndroidを意識することなく、Windowsアプリケーションを即座にお好みのモバイルデバイス専用アプリケーションとして改変できるため、既存資産の保護が可能になるのです。

 

デスクトップ仮想化

Citrix XenApp 6.5 Mobility Pack 利用前
デスクトップ仮想化

Citrix XenApp 6.5 Mobility Pack 利用後
完全なモバイルデバイス対応の実現

Citrix XenApp 6.5 Mobility Packにより、各端末に最適化されたGUIを提供可能になりますが、モバイル環境では、各種モバイルデバイス固有の機能性を提供したい場合があります。たとえば、アプリケーションのGPSやカメラ、通信機能との連動などが挙げられます。

デスクトップ仮想化

モバイルデバイス固有の機能との連動を考慮する必要がある
このようなモバイルデバイス固有の機能とWindowsアプリケーションを連動させるために、シトリックスでは「Citrix Mobile Application SDK for Windows」を無償で提供を開始しました。最新のモバイルデバイスに対応する50以上のAPIが、この開発キットには含まれています。

この開発キットは、Windows開発者が使い慣れたVisual StudioからAPIを使って簡単にモバイルデバイス・アプリケーションを構築することが可能であるため、開発者の既存知識を無駄にすることはありません。急速に発展するモバイルデバイスの進化をシトリックスが吸収するため、良い意味でのアプリケーションの塩漬けが可能になるのです。

 

デスクトップ仮想化

Citrix Mobile Application SDK for Windowsを用いた地図連動アプリ開発例

◆シトリックス モバイルアプリケーション開発コンテスト◆シトリックスでは、「Citrix XenApp 6.5 Mobility Pack」と「Citrix Mobile Application SDK for Windows」を利用したアプリケーションを対象にモバイルアプリケーション開発コンテストを実施しています。バルセロナで開催されるイベントへの招待やiPadやApple TVが当たる賞など用意されていますので、参加してみてはいかがでしょうか?シトリックス モバイルアプリケーション開発コンテストの詳細

 

まとめ

シトリックスでは、企業に最適なモビリティ環境を支援するために様々な取り組みを行っています。iPhone,iPadやAndroid端末などのモバイルデバイスの利便性とWindowsアプリケーションのモビリティにおいて現実的な解を提供することにより、机の上以外でのモビリティ環境を強力に支援しているのです。是非、試してみてはいかがでしょうか?

製品のダウンロードやオンラインマニュアルなど詳細情報は以下より参照ください。

XenApp 6.5 Mobility Packに関して

XenApp 6.5 Mobile Application SDKオンラインマニュアル