これからは、コレ!旬なIT技術やこれから主流となりつつあるIT技術に関する情報をご紹介します。

2017年11月01日

Progressive Web Apps
~ネイティブアプリに見えるけど、
実はWebアプリなモバイルアプリ!?~

Progressive Web Appsとは

Progressive Web Apps(以下、PWA)とは、Webアプリでありながら、ネイティブアプリのように振る舞うことができるアプリです。PWAはモバイル端末でもPCでも動作しますが、オフライン時の動作などで特徴があるため、モバイルアプリでより効果を発揮します。
モバイルアプリは大きくわけると、「Webアプリ」と「ネイティブアプリ」があります。Webアプリはブラウザ(SafariやChrome)上で使うもので、ネイティブアプリはアプリストアからモバイル端末にインストールして使用するものです。Webアプリとネイティブアプリにはそれぞれ、下記の課題があります。

●Webアプリ

  • アクセスしていないときには何も動作させることができない
  • オフラインの場合は使用できない

●ネイティブアプリ

  • 開発者はプラットフォームごとにアプリを開発しなければならない
  • アプリの更新はユーザー自身が行わなければならない

PWAは、Webアプリとネイティブアプリの特徴をあわせることで、双方の課題を解決するWebアプリとして注目されています。通常、Webアプリではブラウザで表示している間のみ処理を実行することができます。PWAではアプリを開いた状態でなくても、処理を継続させることができるため、ユーザーへの新着情報の通知といった機能も実現できます。
PWAの構築には、SPA(Single Page Application ※1)が使われることもあります。SPAは処理のたびに画面全体を再読み込みすることがないアプリとすることで、ユーザーの操作性を高めたものです。PWAではSPAで実現される操作性に加えて、オフラインでも使用できたり、一部の環境においてネイティブアプリと同様にアプリ一覧に表示させて管理したりすることもできます。見た目はネイティブアプリと同じように振る舞うため、利用者はWebアプリとの違いを意識することが少なくなります。

※1 「Webアプリなのにサクサク快適!~シングルページアプリケーション~」(2017年9月)
http://www.kobelcosys.co.jp/column/itwords/20170901/

Progressive Web Appsを利用するメリット

PWAはユーザーから見ると、Webアプリでありながら、ネイティブアプリを使っているような感覚で利用することができます。加えて、アプリ自体の機能面以外では下記のメリットがあります。(図1)

●いつでも最新のアプリ
ネイティブアプリではユーザーがアプリストアを起動してアプリを更新しなければ、アプリ開発者が提供している最新の機能は利用できません。しかし、PWAはWebアプリとして提供されるため、ユーザーが通信可能な環境で利用したときに自動的に最新のアプリを提供することができます。

●すべてのプラットフォームで共通のアプリ
ネイティブアプリはPCやスマートフォンそれぞれのプラットフォームに依存するため、それぞれに別のアプリを開発する必要がありました。そのため、使いたいアプリがあっても自身のスマートフォンには対応していないということもありました。しかし、PWAは一般的なWebアプリの技術で構成されているため、Webブラウザを介して多くのプラットフォームで利用することができます。

PWA
PWA
図1.Progressive Web Appsを利用するメリット

Progressive Web Appsのこれから

PWAによりWebアプリでも様々な機能が実現できるようになり、Webアプリを提供する側にとってアプリ開発の自由度が高くなります。特にプッシュ通知(※2)はユーザーのアプリ利用率をあげる上で重要視されることが多く、プッシュ通知が実装できないためにネイティブアプリを選んでいるというケースも少なくありませんでした。これからはこのようなアプリもWebアプリで提供されることで、複数のプラットフォームで利用できるアプリが増えていくと考えられます。

PWAとして提供されているアプリケーションはまだ多くはありません。しかし、PWAを実行するために必要な環境(WebブラウザのPWA対応)の整備は着実に進んでおり、今後利用する機会も増えていくと考えられます。ただし、PWAの登場によりネイティブアプリが不要になることはなく、カメラなどデバイスの機能を多く活用したアプリはネイティブアプリとして提供する、といった住み分けは今後も変わらないものと思われます。 ユーザーの視点ではそれぞれのアプリの違いを意識することは少ないかもしれません。しかし、PWAが普及し、複数のプラットフォームに対応したアプリが増えることで、環境を問わず多くのアプリを利用できるようになり、さらに利便性が高まっていくと考えられます。

※2 スマートフォンのロック画面や上部に通知を出す機能

2017年11月

ITの可能性が満載のメルマガを、お客様への想いと共にお届けします!

Kobelco Systems Letter を購読