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
WebアプリでスマホIoTに挑戦してみた
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
ktr03
December 13, 2020
Programming
530
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
WebアプリでスマホIoTに挑戦してみた
2020/12/11に社内LT大会で発表した際のスライド資料です。スマホを使ってツーリングの走行記録を可視化するサービスを、学習を兼ねて個人開発しました。
ktr03
December 13, 2020
Other Decks in Programming
See All in Programming
使用 Meilisearch 建立新聞搜尋工具
johnroyer
0
110
【SRE NEXT 2026 Lunch Session】一人目専任SREの立ち上げを加速する ― AIと進めたオンボーディングで2分を0.04秒にした話
pkshadeck
PRO
0
2k
地域 SRE コミュニティ最前線 - ホンマでっかSRE勉強会
tk3fftk
0
200
Strategic Design in the Frontend: Moduliths & Micro Frontends @DDDEurope
manfredsteyer
PRO
0
150
ランチタイムLT会3周年!ランチタイムLT会を3年間続けられたお話
y0hgi
1
140
act1-costs.pdf
sumedhbala
0
200
SREは、MCPとSRE Agentをこう使え!
kazumax55
0
150
1B+ /day規模のログを管理する技術
broadleaf
0
130
吝嗇家のためのAI活用 / AI development for miser - ChatGPT + Issue Driven Development
tooppoo
0
180
壊れたパーサから始める関数型設計と構成的なパーサ #fp_matsuri
raiga0310
2
180
キャリア迷子上等 ─ "ない道"は自分で作ればいい
16bitidol
3
2.8k
【やさしく解説 設計編・中級 #1】一つの車に、運転手は一人 ~ある倉庫システムの事例から~
panda728
PRO
0
130
Featured
See All Featured
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
67
56k
What's in a price? How to price your products and services
michaelherold
247
13k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.8k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
2
320
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
330
Darren the Foodie - Storyboard
khoart
PRO
3
3.4k
How to make the Groovebox
asonas
2
2.3k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
340
The Pragmatic Product Professional
lauravandoore
37
7.4k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.6k
Transcript
Webアプリで スマホIoTに挑戦してみた ktr03
ktr03 DI室 All Whitesチーム エンジニア ⚾️が好き 開発してます! 自己紹介
ツーリング記録を残したい かっこよく可視化したい
構成
構成 今日はWebアプリをメイ ンに話します!!
収集するデータ ・位置情報(緯度/経度/高度) ・温度/湿度
収集するデータ ・位置情報(緯度/経度/高度) ・温度/湿度 スマホ内蔵センサから取れる!
収集するデータ ・位置情報(緯度/経度/高度) ・温度/湿度 Bluetoothデバイスから取る!
Linkingデバイスで始めよう 豊富なラインナップでお手頃価格! 手軽に始められるNode.js ライブラリがある! https://github.com/futomi/node-linking
Webアプリから計測する ・位置情報(緯度/経度/高度) ・温度/湿度 Geolocation API Bluetooth API
Web APIがあるから簡単でしょ!
調子に乗って Progressive Web Apps にしてみる
・ホーム画面のアイコンから呼び出せる ・オフラインでも動作する ・プッシュ通知が受け取れる PWAとは。。。 Webアプリにネイティブアプリと同様の使い勝 手をもたらすウェブアプリのこと
・Service Worker ・Fetch ・Cache モバイルだけでなくPCでのUX改善にも効果あり! Googleのトレーニング資料がおすすめ! https://developers.google.com/web/ilt/pwa 関連する技術 ・Notifications ・Push
・IndexedDB などなど
・Service Worker ・Fetch ・Cache ホームアイコン起動 オフライン動作 バックグラウンド動作 今回使った技術 UX改善!
・Service Worker ・Fetch ・Cache ホームアイコン起動 オフライン動作 バックグラウンド動作 今回使った技術 UX改善!
デモ -IoTアプリ-
デモ -データ可視化-
PWA化したけど。。。 データ取得するWeb APIは制限が厳しく、妥協点が多かった。。
PWA化したけど。。。 Service Workerから呼び出せない! バックグラウンド実行できない! ナビアプリと併用できない! Geolocation API Bluetooth API
さらに。。。 iOS非対応! iphoneからはchromeでも使えません! Bluetooth API Safariと同じWebKitを使用している
続・さらに。。。 iphoneはWakeLock API非対応! ユーザが画面に触れ続ける必要がある 事実上、位置情報の自動計測も不可!
まとめ Webアプリで実現できる IoTユースケースは限られる (特にiphoneは制約多い) PWA技術はフロントエンド側でできる 性能改善の手段として学ぶ価値ある 趣味で個人開発するとスキルアップも できて一石二鳥 資格取得!
最後に。。。 Qiitaでクラウド側の内容とともに記事を公開予定です! PWAのソースコードを公開しています! https://github.com/ktr03rtk/iot-web-app
ご清聴 ありがとうございました