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
52
Laravelで設計する際の ベストプラクティスを探る
nakanishitetsuhiro
0
2.3k
MackerelでECS on Fargate 監視してみた
nakanishitetsuhiro
0
900
WebエンジニアによるWebエンジニアのための今だからこそおすすめしたいLinux環境
nakanishitetsuhiro
1
98
本番環境をECSで構築した話
nakanishitetsuhiro
0
910
Laravel5でjobque実装した話
nakanishitetsuhiro
0
110
Laravel5でJob_Queue実装した話_v1.0.1
nakanishitetsuhiro
1
57
社会人による社会人のための友達づくりのすゝめ
nakanishitetsuhiro
0
53
Other Decks in Technology
See All in Technology
事業状況で変化する最適解。進化し続ける開発組織とアーキテクチャ
caddi_eng
1
6.3k
Android Studio Otter の最新 Gemini 機能 / Latest Gemini features in Android Studio Otter
yanzm
0
200
AS59105におけるFreeBSD EtherIPの運用と課題
x86taka
0
260
今すぐGoogle Antigravityを触りましょう
rfdnxbro
0
150
なぜブラウザで帳票を生成したいのか どのようにブラウザで帳票を生成するのか
yagisanreports
1
180
国産クラウドを支える設計とチームの変遷 “技術・組織・ミッション”
kazeburo
4
7.8k
重厚長大企業で、顧客価値をスケールさせるためのプロダクトづくりとプロダクト開発チームづくりの裏側 / Developers X Summit 2025
mongolyy
0
170
LINEヤフー バックエンド組織・体制の紹介
lycorptech_jp
PRO
0
850
大規模モノレポの秩序管理 失速しない多言語化フロントエンドの運用 / JSConf JP 2025
shoota
0
350
改竄して学ぶコンテナサプライチェーンセキュリティ ~コンテナイメージの完全性を目指して~/tampering-container-supplychain-security
mochizuki875
1
380
Pandocでmd→pptx便利すぎワロタwww
meow_noisy
1
570
SRE視点で振り返るメルカリのアーキテクチャ変遷と普遍的な考え
foostan
2
490
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Producing Creativity
orderedlist
PRO
348
40k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
The Invisible Side of Design
smashingmag
302
51k
The Cult of Friendly URLs
andyhume
79
6.7k
Context Engineering - Making Every Token Count
addyosmani
9
410
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Rails Girls Zürich Keynote
gr2m
95
14k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
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)