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
DynamicLinks 知られざる?Firebaseの秘技
Search
nacatl
November 15, 2018
Programming
2
1.2k
DynamicLinks 知られざる?Firebaseの秘技
nacatl
November 15, 2018
Tweet
Share
More Decks by nacatl
See All by nacatl
Flutterにおけるアプリ内課金実装 -Android/iOS完全なる統一 -
nacatl
2
6.9k
Navigation Componentを実戦投入した際の感動、便利さ、そしてつまづき
nacatl
0
2.9k
nacatl_slide_04_AAC_Navigation_Toolbar
nacatl
0
790
nacatl_slide_03_AAC_Navigation_SafeArfgs.pdf
nacatl
0
59
nacatl_slide_02_MapView_in_Recycler_view.pdf
nacatl
1
300
Other Decks in Programming
See All in Programming
Composerが「依存解決」のためにどんな工夫をしているか #phpcon
o0h
PRO
1
210
「Cursor/Devin全社導入の理想と現実」のその後
saitoryc
0
140
LT 2025-06-30: プロダクトエンジニアの役割
yamamotok
0
100
Webの外へ飛び出せ NativePHPが切り拓くPHPの未来
takuyakatsusa
2
340
Team operations that are not burdened by SRE
kazatohiei
1
180
GraphRAGの仕組みまるわかり
tosuri13
7
480
イベントストーミング図からコードへの変換手順 / Procedure for Converting Event Storming Diagrams to Code
nrslib
1
300
ドメインモデリングにおける抽象の役割、tagless-finalによるDSL構築、そして型安全な最適化
knih
11
2k
Claude Codeの使い方
ttnyt8701
1
130
Select API from Kotlin Coroutine
jmatsu
1
190
KotlinConf 2025 現地で感じたServer-Side Kotlin
n_takehata
1
230
PostgreSQLのRow Level SecurityをPHPのORMで扱う Eloquent vs Doctrine #phpcon #track2
77web
2
290
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
How to Think Like a Performance Engineer
csswizardry
24
1.7k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
790
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Documentation Writing (for coders)
carmenintech
71
4.9k
Into the Great Unknown - MozCon
thekraken
39
1.9k
BBQ
matthewcrist
89
9.7k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
Practical Orchestrator
shlominoach
188
11k
Transcript
Copyright 2018 Studyplus, Inc. All Rights Reserved. Dynamic Links ~知られざる?Firebaseの秘技~
Yuzuru Nakashima / Studyplus Inc. 2018.11.15 @ potatotips #56
自己紹介 ✎ なかてぃる affinity_robots nacatl ✎ スタディプラスのAndroidエンジニア ✎ 趣味: Magic
the Gathering
目次 ✎ DynamicLinksって何? ✎ 何ができるの? ✎ どうやって作るの? ✎ 使い方は?
DynamicLinksって何? What is this?
DynamicLinksって何? Firebaseが提供しているサービスの一つ。 簡単に言えば アプリに対する すごーい! リダイレクトリンク です。
何ができるの? What can it do?
何ができるの? Android or iOS or PC(その他) で場合分けして、リダイレクトさせられる
何ができるの? アプリのインストール有無を判定でき、 ストアからのインストールを挟んでも ディープリンクを判定できる!! - インストール済み→ディープリンク起動 - 未インストール→ストア(か任意URL)に遷移
どうやって作るの? How do I create it?
どうやって作るの? 原型。パラメータをクエリで突っ込む https://{Firebaseプロジェクトの固有ドメイン}.app.goo.gl ?link={https://で始まるリンク。アプリのディープリンクはここを見る} &dfl={デスクトップ用フォールバックリンク} &apn={Androidアプリのパッケージ名} &afl={Android用フォールバックリンク(ストアの代わりの割り込み先)} &amv={Android用の、リンクを開ける最小のバージョンコード} &isi={iOSアプリのストアID} &ibi={iOSアプリのバンドルID}
&ius={iOS用のカスタムスキーム} &ifl={iOS用フォールバックリンク} &imv={iOS用の、リンクを開ける最小のバージョンコード} ... あとiPad用とか広告用とか
どうやって作るの? 短縮APIに投げる POST https://firebasedynamiclinks.googleap is.com/v1/shortLinks?key={api_key} Content-Type: application/json
どうやって作るの? { "dynamicLinkInfo": { "dynamicLinkDomain": "abc123.app.goo.gl", "link": "https://example.com/", "androidInfo": {
{ "androidPackageName": "com.example.android" } }, "iosInfo": { { "iosBundleId": "com.example.ios" } } } } Jsonの中身: パラメータ別に
どうやって作るの? Jsonの中身: 長いのそのまま { "longDynamicLink": "https://abc123.app.goo.gl/?link=https://example.com/&apn=com .example.android&ibi=com.example.ios" }
どうやって作るの? FirebaseConsoleのウィザード
どうやって作るの? クエリにd=1でデバッグ
使い方は? How to use?
✎ https://{Firebaseプロジェクトの固有ドメイン}で 起動できるようにしておく - (iOS→ユニバーサルリンク、スキーム起動) - (Android→Intent Filterでスキーム起動) ✎ ディープリンク起動時にDynamicLinksの確
認 ✎ DynamicLinksからディープリンクを 取得して処理 使い方は?
作ったリンクは… ✎ 例えばSNSにシェアしてみたり ✎ 物理的にQRカード作って配ったり ✎ リンクごとにAnalyticsも取れる 使い方は?
複数のプラットフォームにまたがるアプリに、 共通のリンクで何かを共有させたい時に すごく有用だと思う。
ご静聴ありがとうございました