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
5k
Navigation Componentを実戦投入した際の感動、便利さ、そしてつまづき
nacatl
0
2.6k
nacatl_slide_04_AAC_Navigation_Toolbar
nacatl
0
700
nacatl_slide_03_AAC_Navigation_SafeArfgs.pdf
nacatl
0
57
nacatl_slide_02_MapView_in_Recycler_view.pdf
nacatl
1
290
Other Decks in Programming
See All in Programming
小さな開発会社を作った理由
polidog
0
1.9k
Rustのweb開発を助ける 便利なツール紹介
yuki0418
1
190
Findy - エンジニア向け会社紹介 / Findy Letter for Engineers
findyinc
2
81k
初心者がおさえておきたいAWS CDKのベストプラクティス 2024
konokenj
15
7.3k
「2024年版 Kotlin サーバーサイドプログラミング実践開発」の補講 〜O/Rマッパー編〜
n_takehata
2
260
OpenAI/Gemini APIを使って EPUBを翻訳するCLIツールをつくってみた
tomiyan
0
790
最古の関数型言語「Lisp」ことはじめ / lisp_in_kamiyama
uhooi
1
190
The rollercoaster of releasing an Android, iOS, and macOS app with Kotlin Multiplatform | droidcon Berlin
prof18
0
110
ぼっちを避けて楽しむためのアノテコノテ / Various Tips and Tricks to Avoid Loneliness and Have Fun
nrslib
3
1.7k
Exploring the Gradually Lost Technical Skills in the Cloud Native Era
hwchiu
2
3.9k
Microservices rules (July 2024) : what good looks like
cer
PRO
0
1.6k
生成AIをkintoneに連携してみた
hideg
0
230
Featured
See All Featured
Bootstrapping a Software Product
garrettdimon
PRO
304
110k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Faster Mobile Websites
deanohume
303
30k
The Pragmatic Product Professional
lauravandoore
29
6.1k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
36
9.1k
Automating Front-end Workflow
addyosmani
1362
200k
Art, The Web, and Tiny UX
lynnandtonic
291
20k
Six Lessons from altMBA
skipperchong
24
3.2k
Navigating Team Friction
lara
181
13k
How GitHub (no longer) Works
holman
305
140k
How to name files
jennybc
67
96k
The Art of Programming - Codeland 2020
erikaheidi
48
13k
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も取れる 使い方は?
複数のプラットフォームにまたがるアプリに、 共通のリンクで何かを共有させたい時に すごく有用だと思う。
ご静聴ありがとうございました