Copyright 2018 Studyplus, Inc. All Rights Reserved.Dynamic Links~知られざる?Firebaseの秘技~Yuzuru Nakashima / Studyplus Inc.2018.11.15 @ potatotips #56
View Slide
自己紹介✎ なかてぃるaffinity_robotsnacatl✎ スタディプラスの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に投げるPOSThttps://firebasedynamiclinks.googleapis.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も取れる使い方は?
複数のプラットフォームにまたがるアプリに、共通のリンクで何かを共有させたい時にすごく有用だと思う。
ご静聴ありがとうございました