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
Reactで始めるsencer入門
Search
Hayashi Takao
December 18, 2019
59
0
Share
Reactで始めるsencer入門
create-react-appでPWAを作り、スマートフォンのセンサーの値を拾って状態を監視する
Hayashi Takao
December 18, 2019
More Decks by Hayashi Takao
See All by Hayashi Takao
React 19×Rustツール 進化の「ズレ」を設計で埋める
remrem0090
1
110
今日から始めるWeb Components
remrem0090
0
90
今日から始めるgithub actions
remrem0090
0
54
Reactでのマルチストア運用を考察する
remrem0090
0
230
effectorを使い倒してReduxのかわりになるか検証する
remrem0090
1
810
React code Splitting
remrem0090
1
570
Featured
See All Featured
Designing for humans not robots
tammielis
254
26k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
Odyssey Design
rkendrick25
PRO
2
610
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.1k
Music & Morning Musume
bryan
47
7.2k
The World Runs on Bad Software
bkeepers
PRO
72
12k
エンジニアに許された特別な時間の終わり
watany
106
240k
Design in an AI World
tapps
1
210
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.6k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
420
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
1
48
Transcript
Reactで始めるsensor入門 hayashi takao
アジェンダ
テーマ sensor制御 怖くないよ? - 動機 - 見据える最終ゴール - 今回達成できたこと -
学び/発見 - まとめ
1. 動機
もっと簡単に友達と繋がりたい!! 友達とSNSや連絡先を交換するときこんな会話したことありませんか? 『ぜひご飯行きましょう!!』 『いいですね!何で連絡すると連絡つきやすいですか?』 『TwitterのDMですかね... (ツイ廃)』 (ごそごそと交換のためのコードを探す) 『あれ?うまく読み込めない...』
2. 最終ゴール
これに連絡してくれってSNSを選んで簡単に交換 自分がやっている各種SNSを連携して、交換したい相手の携帯とバンプさせる すると簡単に連絡先が交換できて人に応じて教えるSNSも選べて便利では? とにかく連絡先の交換を死ぬほど簡単にしたい!!
3. 今回達成できたこと
demoをご覧ください
4. 学び/発見
学び - windowオブジェクトにはそのブラウザがホストされてるデバイスのジャイロセン サーやモーションセンサーにアクセスできるAPIが存在する。 - chromeにはデバイスごとにセンサーをエミュレートするデバッガが内臓されており とても便利。 - センサー類はブラウザのメモリ内で計算されるのであんまり重い処理をさせるとメモ リを食い切る場合も。
- TS/JS系のライブラリが豊富でセンサー系以外にも音声やシンセサイザのライブラ リも存在する。 - ネイティブアプリとほぼ同様のことが実装可能
発見 - センサーの挙動はイベントリスナーを通じて取得。 - 加速と、ジャイロのセンサーが異なり加速度センサーには慣性の計算が組み込ま れた変数が存在する。 - abusoluteと呼ばれる位置に対しての変化分を表示するのでlet地獄 - かなり計算量が多いのでメモリへの負荷が高い
- 将来的にやりたいbumpにはスマホをぶつけた時のジャイロと加速の閾値が必要で 再現が難しいそう
5. まとめ
学び - windowオブジェクトにはそのブラウザがホストされてるデバイスのジャイロセン サーやモーションセンサーにアクセスできるAPIが存在する。 - chromeにはデバイスごとにセンサーをエミュレートするデバッガが内臓されており とても便利。 - センサー類はブラウザのメモリ内で計算されるのであんまり重い処理をさせるとメモ リを食い切る場合も。
- TS/JS系のライブラリが豊富でセンサー系以外にも音声やシンセサイザのライブラ リも存在する。
参考にしたドキュメント - Google Developer Docs(https://developers.google.com/web/updates/2017/09/sensors-for-the-web) - 日本語版(https://developers.google.com/web/fundamentals/native-hardware/device-orientation/?hl=ja) - sencer-polifill資料 (https://www.pika.dev/npm/motion-sensors-polyfill)
DeviceOriantasionEventの仕様(https://w3c.github.io/deviceorientation/)