2018年4月9日
プログラミング
ホーム画面へのアプリ追加(iOS編)【これからはじめるPWA】


はじめに
以前、PWA(Progressive Web Apps)の概要について、こちらでご紹介しました。
https://bagelee.com/marketing/pwa/
モバイルアプリが飽和状態の今、新規のアプリケーションを広めていくことはとても困難です。
PWAは「モバイル体験の最適化」をWebで行うことのできる技術です。
モバイルアプリの直接の代替になることはないと思われますが、一部を補いながら少しずつPWAは広まっていくだろうと言われています。
このシリーズでは、特徴はもちろん実際にPWAを開発しながら解説していきます。
PWAでできること
このシリーズでは、以下についてPWAで可能なことと考え、解説していきます。
- ホーム画面にアクセス(インストール)することができる
- オフラインでも動作する
- プッシュ通知が可能
- ネイティブアプリの機能(位置情報・カメラ組み込み等)が可能
※PWAという言葉が広まる前にも既にあった技術もあり、定義が曖昧な部分もあります。
POINT!!
tomayacさんというGoogleのエンジニアが作られているこちらのページを開くと、どの機能に対応しているかが◯×で表示されます。特に Android版Google ChromeとSafariでは大きく使える機能に差があることがわかります。 少しずつではありますが、AppleもPWAへの対応をしていくだろうと言われており、そうなると一気にPWAへの流れが加速するかもしれません。 
ホーム画面へのインストール
それでは、今回はまずホーム画面にインストールする方法をご紹介していきます。
「Webサイトなのにホームにインストールってどういうこと?」と思われる方もいらっしゃるかもしれませんね。
ぱっと見、全く同じに見える2つのbageleeアプリ。
右側はbageleeのiPhoneアプリ です。
そして左側はPWA版bageleeです。
こちらは後ほど紹介するiOSのWeb Clipという従来から使われていたブックマーク機能です。
ですが、Androidについてはmanifest.jsonというファイルを作ることで、ダウンロードを誘導するボタンなどが出てくるなど、アプリのストアを経由しないPWA化が進んできています。
Web Clipを作る
まずiOS版のWebClipを作っていきます。
これを追加することで、safariで「ホーム画面に追加」からアプリのような形でブックマークを追加することができます。
この「ホームに追加」の際のアイコンやタイトルなどを設定することができます。

といっても難しいことはなく、いくつかWebページにmetaタグを埋め込んでいく程度です。
では、bageleeに埋め込まれているタグを見ていきます。
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta name="apple-mobile-web-app-title" content="bagelee">
<link rel="apple-touch-icon" href="/config/icons/app-icon-72x72.png" sizes="72x72">
<link rel="apple-touch-icon" href="/config/icons/app-icon-114x114.png" sizes="114x114">
<link rel="apple-touch-icon" href="/config/icons/app-icon-120x120.png" sizes="120x120">
<link rel="apple-touch-icon" href="/config/icons/app-icon-144x144.png" sizes="144x144">
1つずつ見ていきます。
apple-mobile-web-app-capable
こちらはホーム画面に追加されたブックマークを立ち上げた際、URLの部分が表示するかどうか(通常のsafariアプリとして表示しない)を設定できます。
こちらの画像をご覧ください。
実際はSafariのブックマークなのですが、URL部分がなくフルスクリーンアプリとなる為に、単独のアプリのように見えますね。

<meta name="apple-mobile-web-app-status-bar-style" content="black">
こちらは、アプリを立ち上げた際のステータスバーの色を設定することができます。
先程のbageleeのアプリでは、設定したようにステータスバーが黒になっていますね!
<meta name="apple-mobile-web-app-title" content="bagelee">
こちらはホーム画面に追加したアプリのタイトルについて、設定しています。
このタイトル次第で、継続的にアプリを使ってもらえるかが変わるので重要な要素です。
最後にホーム画面追加時のアイコンについて解説します。
<link rel="apple-touch-icon" href="/config/icons/app-icon-72x72.png" sizes="72x72">
<link rel="apple-touch-icon" href="/config/icons/app-icon-114x114.png" sizes="114x114">
<link rel="apple-touch-icon" href="/config/icons/app-icon-120x120.png" sizes="120x120">
<link rel="apple-touch-icon" href="/config/icons/app-icon-144x144.png" sizes="144x144">
sizeを指定して、アイコン画像を指定するだけですが、各デバイス毎に適切なサイズが異なります。
こちらのQiitaさんの記事にまとまっているので参考にしてみてください。
iOS 解像度、画像スケール、アプリアイコンサイズ
まとめ
少し長くなりそうだったので、今回はiOS版のみとします。
次回はAndroidの対応をしてmanifest.jsonを作っていきます。
PWAのお仕事に関するご相談
Bageleeの運営会社、palanではPWAに関するお仕事のご相談を無料で承っております。
zoomなどのオンラインミーティング、お電話、貴社への訪問、いずれも可能です。
ぜひお気軽にご相談ください。
この記事は
参考になりましたか?
3
2
関連記事
簡単に自分で作れるWebAR
「palanAR」はオンラインで簡単に作れるWebAR作成ツールです。WebARとはアプリを使用せずに、Webサイト上でARを体験できる新しい技術です。
palanARへ












