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
1.8k
PWAで誰でも簡単ネイティブアプリ開発
Used in JavaScript MeetUp Okinawa Vol.3
NakanishiTetsuhiro
April 28, 2018
Tweet
Share
More Decks by NakanishiTetsuhiro
See All by NakanishiTetsuhiro
コメントの書き方から見る 良いコードについての考察
nakanishitetsuhiro
0
530
SelfIntroduction
nakanishitetsuhiro
0
42
Laravelで設計する際の ベストプラクティスを探る
nakanishitetsuhiro
0
1.8k
MackerelでECS on Fargate 監視してみた
nakanishitetsuhiro
0
730
WebエンジニアによるWebエンジニアのための今だからこそおすすめしたいLinux環境
nakanishitetsuhiro
1
83
本番環境をECSで構築した話
nakanishitetsuhiro
0
730
Laravel5でjobque実装した話
nakanishitetsuhiro
0
90
Laravel5でJob_Queue実装した話_v1.0.1
nakanishitetsuhiro
1
46
社会人による社会人のための友達づくりのすゝめ
nakanishitetsuhiro
0
39
Other Decks in Technology
See All in Technology
沒想過的前端錯誤處理可能比你有做的還多
line_developers_tw
PRO
0
2k
あらゆる商品を扱う商品データベースを再設計した話 / product db re-architecture
rince
8
3.6k
LLM + RAG を使った SORACOM Support Bot の裏側の歴史
soracom
PRO
1
640
私のRSpecの書き方 / How I write RSpec
tmtms
4
830
Introduction to Jetpack Compose
pohjus
1
110
エンジニアブランディングチームの KPI / KPI's of engineer branding team
chaspy
1
140
期待しすぎずに取り組む両面 TypeScript
shozawa
2
290
Kubeflow Pipelines v2 で変わる機械学習パイプライン開発
asei
4
340
10分でわかるfreeeのQA
freee
0
230
技術広報として2023年度に頑張ったこと / What we did well in FY2023 as a DevRel
pauli
5
460
SREsのためのSRE定着ガイド
netmarkjp
10
1.6k
技術イベントはなんとかひねり出す 日経の技術広報の取り組み/techpr3
nishiuma
0
220
Featured
See All Featured
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
101
6.6k
Agile that works and the tools we love
rasmusluckow
323
20k
Fontdeck: Realign not Redesign
paulrobertlloyd
75
4.8k
WebSockets: Embracing the real-time Web
robhawkes
59
6.9k
How to train your dragon (web standard)
notwaldorf
71
5.1k
Documentation Writing (for coders)
carmenintech
59
3.8k
GraphQLとの向き合い方2022年版
quramy
28
12k
Pencils Down: Stop Designing & Start Developing
hursman
115
11k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
111
35k
Producing Creativity
orderedlist
PRO
335
39k
Large-scale JavaScript Application Architecture
addyosmani
501
110k
Building an army of robots
kneath
300
41k
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)