Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
PWAで誰でも簡単ネイティブアプリ開発
Search
NakanishiTetsuhiro
April 28, 2018
Technology
0
2.1k
PWAで誰でも簡単ネイティブアプリ開発
Used in JavaScript MeetUp Okinawa Vol.3
NakanishiTetsuhiro
April 28, 2018
Tweet
Share
More Decks by NakanishiTetsuhiro
See All by NakanishiTetsuhiro
コメントの書き方から見る 良いコードについての考察
nakanishitetsuhiro
0
650
SelfIntroduction
nakanishitetsuhiro
0
50
Laravelで設計する際の ベストプラクティスを探る
nakanishitetsuhiro
0
2.2k
MackerelでECS on Fargate 監視してみた
nakanishitetsuhiro
0
890
WebエンジニアによるWebエンジニアのための今だからこそおすすめしたいLinux環境
nakanishitetsuhiro
1
96
本番環境をECSで構築した話
nakanishitetsuhiro
0
900
Laravel5でjobque実装した話
nakanishitetsuhiro
0
110
Laravel5でJob_Queue実装した話_v1.0.1
nakanishitetsuhiro
1
56
社会人による社会人のための友達づくりのすゝめ
nakanishitetsuhiro
0
51
Other Decks in Technology
See All in Technology
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
11
78k
「れきちず」のこれまでとこれから - 誰にでもわかりやすい歴史地図を目指して / FOSS4G 2025 Japan
hjmkth
1
230
ACA でMAGI システムを社内で展開しようとした話
mappie_kochi
1
310
ガバメントクラウドの概要と自治体事例(名古屋市)
techniczna
2
220
『OCI で学ぶクラウドネイティブ 実践 × 理論ガイド』 書籍概要
oracle4engineer
PRO
3
170
Goに育てられ開発者向けセキュリティ事業を立ち上げた僕が今向き合う、AI × セキュリティの最前線 / Go Conference 2025
flatt_security
0
370
ユーザーの声とAI検証で進める、プロダクトディスカバリー
sansantech
PRO
1
110
Modern_Data_Stack最新動向クイズ_買収_AI_激動の2025年_.pdf
sagara
0
240
ガバメントクラウド(AWS)へのデータ移行戦略の立て方【虎の巻】 / 20251011 Mitsutosi Matsuo
shift_evolve
PRO
2
180
How to achieve interoperable digital identity across Asian countries
fujie
0
140
Geospatialの世界最前線を探る [2025年版]
dayjournal
1
190
能登半島地震で見えた災害対応の課題と組織変革の重要性
ditccsugii
0
290
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.7k
Producing Creativity
orderedlist
PRO
347
40k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
KATA
mclloyd
32
15k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
How GitHub (no longer) Works
holman
315
140k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Code Reviewing Like a Champion
maltzj
525
40k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
51k
The World Runs on Bad Software
bkeepers
PRO
71
11k
Transcript
PWAで誰でも簡単ネイティブアプリ開発!
自己紹介 中西哲大(テツさん、てっちゃん) 株式会社Re:Build Webエンジニア リモートワーク歴1ヶ月 好き:Python, Go, Linux, Laravel, Vue.js
音楽好き(ギター弾くのと歌うの好き) PyData.Okinawaオーガナイザー
PWAとは? Progressive Web App の略 基本的には全画面表示のブラウザってイメージ バックグラウンドでService Workerが常駐している HTML +
CSS + JSでアプリ開発できる
PWAとは? モバイルのSafariやChromeからホーム画面に追加するだけでインス トール完了 Service Workerの機能を利用するのでブラウザがService Workerに 対応している必要あり HTTPS必須 (GitHubPagesで公開可能!)
Service Workerとは リッチなオフライン体験、定期的なバックグラウンド同期、プッシ ュ通知など、これまでネイティブアプリを必要としていた機能が Web にもやってきます。Service Worker はそれらの機能を提供す る基盤技術です。
Service Workerのおおまかなライフサイクル
AppCacheっていう似た機能が昔あった 以前にも、オフライン体験を Web にもたらすものとして AppCache というものがあった AppCache の重大な問題として、たくさんの意図しない挙動があっ たこと、シングルページ Web
アプリにはうまく動いてくれたもの の、複数のページにまたがるサイトではうまく動いてくれないとい う設計・・・ Service Worker はこれらの弱点を避けるように設計されている 「Service Worker の紹介」https://developers.google.com/web/fundamentals/primers/service‑ workers/?hl=ja より引用
ServiceWorker対応状況
PWAはWebアプリとネイティブアプリのいい とこどり! 端末がオンラインのときのみ指定したファイルをアップデート オフラインのときはキャッシュされたファイルをもとに起動 Webエンジニアも簡単に実装できる! AppStoreやGooglePlayの審査がいらない!
iOSの11.3からのPWA対応でできるようになったこと (https://medium.com/@takeshiamano/iosの11‑3からのpwa対応ででき るようになったこと‑313f638a172b)
PWA、いいんじゃないでしょうか!(´ω`)
今日の目標 1. GitHubPagesでPWAを公開 2. 色々なPWAをインストールして遊んでみる(時間があれば)
サイトをPWA化するのに必要なもの ファイル名 目的 manifest.json PWAに関する設定を記述するところ sw.js ServiceWorkerに関する処理をかくところ
None
https://github.com/NakanishiTetsuhiro/redroom2018 https://nakanishitetsuhiro.github.io/redroom2018/
それでは実際のコードを見ていきましょう
シンプルなPWAサンプルここに置いておきますね (https://qiita.com/kazaoki/items/e93b88556fcd05d28ddc)
PWAが色々おいてあります PROGRESSIVE WEB APPS
PWAに対応しているWebサービス(一部) Twitter Instaglam SUUMO WEGO
ご清聴ありがとうございました! あとでどこかに資料アップするので詳しく見たい方はどうぞ
参考サイト シンプルなPWAサンプルここに置いておきますね (https://qiita.com/kazaoki/items/e93b88556fcd05d28ddc) vue‑pwa‑boilerplate (https://qiita.com/radiocat/items/034904a094d07c389a4f#vue‑ pwa‑boilerplate) はじめてのプログレッシブ ウェブアプリ (https://codelabs.developers.google.com/codelabs/your‑first‑ pwapp‑ja/#0)