Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
社内用アプリでFirebaseを使っている話
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
yamacraft
June 23, 2017
Programming
2.1k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
社内用アプリでFirebaseを使っている話
2017年6月23日に開催されたOtemachiFirebase#2で発表した資料です
yamacraft
June 23, 2017
More Decks by yamacraft
See All by yamacraft
なぜアプリのデザインとその実装はうまくいかないのか?
yamacraft
0
230
あんまり触れられてない気がする、Kotlin1.3の ありがたい追加機能
yamacraft
0
3.3k
ありがたいUIをもっと大事にしたい
yamacraft
2
2.5k
Quickstart-android/mlkitについて
yamacraft
2
5.1k
Firebase関連をCIでデプロイするときのTips
yamacraft
0
5.1k
開発用途で Realtime Databaseを 導入した話
yamacraft
2
4.7k
ciecleci/androidのOpenSSLに気をつけよう
yamacraft
0
750
Realtime Databaseに向いてる・向いてないサービス
yamacraft
0
990
弊社のアプリ開発CI環境
yamacraft
0
1.2k
Other Decks in Programming
See All in Programming
GKE アップグレード前に知っておきたい Blue/Green と PDB の関係
stkk
0
160
AIは賢い。でも実行環境は? CLIおじさんがAI時代に伝えたいこと ~ CLIおじさんがAI時代に伝えたいこと ~
curekoshimizu
1
240
Jetpack Compose メカニズム
skydoves
0
150
技術的負債を組織課題として解く-増えすぎたマイクロサービスとの戦い-
reimaru
1
600
マイコン向けの軽量Ruby「PicoRuby」で各種デバイスを制御するネイティブアプリの実現手法
bash0c7
0
370
DroidKaigi 2026 「個人開発という実験場: Android エンジニアが手にする4つの自由」
slashnephy
0
230
Claude Codeを組織的に動かして月400PRを実現した話
happy_ryo
0
270
LL言語やWebフレームワークのPostgreSQL対応 〜DBの機能がユーザーに届くまで〜
kentaroutakeda
0
150
kubernetes コンポーネント開発入門 / 新卒N年目の勉強会&交流会!〜〇〇への誘い〜 #n_study
mazrean
0
220
Omarchy Tokyo やると聞いて UMPC 買ってセットアップしてきた
mtsmfm
0
140
【DroidKaigi 2026】「アクセシビリティを利用するとき、 アクセシビリティもまたこちらを利用している」 〜マルウェアによる攻撃と防衛について〜
halunoyo
0
450
高専キャリア LT 発表内容
crysta1221
6
5.7k
Featured
See All Featured
The Language of Interfaces
destraynor
162
27k
Building the Perfect Custom Keyboard
takai
2
870
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
350
Faster Mobile Websites
deanohume
310
32k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
520
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
590
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2.1k
A Tale of Four Properties
chriscoyier
163
24k
How to Think Like a Performance Engineer
csswizardry
28
2.8k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
270
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
600
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
12k
Transcript
ࣾΞϓϦͰ FirebaseΛ͍ͬͯΔ @yamacraft
profile • @yamacraft (Wataru Yamada) • Mobile Application Engineer •
LeadingMark, inc • team Y.G.E.(private)
None
دߘͯ͠·͢ʂ • ൃചதʂʂ • Android 7.0/7.1 • Firebase (Android/iOS) •
Analytics • Notifications
ࢀߟࢿྉʢίʔυ෦ʣ • https://gist.github.com/yamacraft/ c232359e28db4fcbca9ef2bd2420fe87 • Shortener > https://goo.gl/gJsbHo
ࠓճͷൃද༰ ʮ͍·ͬͯΔ͜ͱʯ ʮ·ͩͬͯͳ͍͜ͱʯ ʮ͍͔ͭΓ͍ͨ͜ͱʯ Ͱ͓ૹΓ͠·͢
ຊ
εϚʔτϩοΫʹΑΔղৣ
ݱࡏͷ
ೖ੍ࣨޚΞϓϦͰղܾʢ༧ఆʣ
ΞϓϦͷ֓ཁਤ
ࠓճ͜͜ͷΛ͠·͢
ࠓճར༻͍ͯ͠Δػೳ • Realtime Database • ϢʔβʔʢʴΧʔυʣͷొͱಡΈࠐΈ • Authentication • GoogleೝূʴDBͷॻ͖ࠐΈ੍ݶ
• ʢAnalyticsɺCrash Reportingʣ
Realtime Databaseͷߏ • ෳࡶʹ͢ΔϝϦοτ ͳ͍ͷͰγϯϓϧʹ • ϓϩδΣΫτΛෳ ཧ͢Δͷ͕໘ͦ͏ͳ ͷͰɺ͍ͬͨΜಉ͡ϓ ϩδΣΫτͰςετͱ
ຊ൪σʔλΛཧʢΑ Ζ͘͠ͳ͍ʣ
Cardใ෦Ϋϥε
Database Client
Database Clientॲཧ • items/ҎԼͷσʔλมߋΛࢹʢValueEventListenerʣ • มԽ͕͋ΕίʔϧόοΫΛͬͯར༻ݩΫϥεʹ DataSnapshotΛૹΔ • ར༻ݩΫϥεʢࠓճViewModelଆʣͰσʔλͷ ܗͱরձΧʔυϦετใΛߋ৽͢Δ
• ܗ·Ͱ͜͜Ͱͬͨํ͕͍͍ͷ͔ͳ…Θ͔ΒΜʂ
ܗ෦ʢViewModelʣ
ॻ͖ࠐΈͱͯ୯७ • ͨͩ͠ɺʢࠓճͷΞϓϦʣಛఆͷGoogleΞ ΧϯτͰೝূ͍ͯ͠Δඞཁ͕͋Γ·͢
RealtimeDatabaseͰ͍͍ͳͱ ࢥͬͨͱ͜Ζ • ཧଆͰDBΛมߋʢՃʗআʗߋ৽ʣͤ͞Δͱར༻ ͷDB͕ଈ࠲ʹߋ৽͞ΕΔ • ϙʔϦϯάΈ͍ͨͳॲཧ͕ෆཁʂศརʂ • REST API͕༻ҙ͞Ε͍ͯΔ
• ͖ͳݴޠͰσʔλ੍ޚͰ͖Δ • ೝূ੍ޚ͕བྷΉͱͪΐͬͱ͔͍͔ͬ͠Εͳ͍
Firebase Admin Python SDK ɺͪΐͬͱղઆॻ͖·ͨ͠
AuthenticationʹΑΔ੍ݶ • ಡΈࠐΈ੍ݶͳ͠ʢಛʹൿಗ͖͢ใͳ͍ͨΊʣ • ॻ͖ࠐΈಛఆϢʔβʔʢGoogleΞΧϯτʣͷΈͱ ͢Δ
AuthenticationʢUIDऔಘʣ ʹ͍ͭͯ • firebase/quickstartͷαϯϓϧͦͷ··ͳͷ Ͱɺ͋·ΓޠΕΔͱ͜Ζͳ͍Ͱ͢… • UIDೝূޙͰͳ͍ͱ֬ೝͰ͖ͳ͍ͷͰҙ
Authenticationͷิ • ͪͳΈʹGoogleೝূͷ߹ɺΞΧϯτͷ ϝʔϧΞυϨε͕औಘͰ͖·͢
ݱ࣌Ͱߟ͑͏Δݒ೦ • ॳճͷಡΈࠐΈ͕ͪΐͬͱ͔͔࣌ؒΔҹ͕͋Δ • ͱ͍͑جຊৗ࣌ىಈͳͷͰগͳ͍ ͣ…ʁ • Ϣʔβʔʢۈऀʣ͕૿͑ͨͱ͖ͷཧӡ༻࣌ͷ ࢹ͕ΞϓϦ͚ͩͰͪΐͬͱΊΜͲͦ͘͞͏… •
Cloud FunctionͰͳΜͱ͔ͳΓͦ͏ͳؾ͕͢Δ…
None
Εͦ͏ͳ͜ͱ • Realtime Database / AuthenticationΛࢹͯ͠… • ຊ൪σʔλͱςετσʔλͷಉظॲཧ • αΠϯΠϯΛslackʹ௨
ʼ ෆཁͳαΠϯΠϯͷ࣮ߦࢹ • HTTPτϦΨʔΛͬͯ… • chat botܦ༝ͰFCM ʼ ϩοΫղআͷ੍ޚ • ఆظ࣮ߦ ʼ ར༻͞Ε͍ͯͳ͍ΧʔυͷνΣοΫ
ҙ • ແྉͰGoogleҎ֎͔Βͷݺͼग़͕͠Ͱ͖ ͳ͍ͷͰҙɻ
firebase/functions-samples
͓͠·͍ ʢ࣍ճ͕͋ΕʣͦͷޙͷͩͬͨΓɺFirebase ΛͬͨWebαʔϏεఏڙͷΛ͠·͢ʂ