Help us understand the problem. What is going on with this article?

FDLでアプリが開かない時に確認すべき4箇所

はじめに

Firebase Dynamic LinksをiOSアプリで実装するにあたり、デバッグでつまづいてしまって想定以上の時間を要してしまいました。

具体的にはリンクからAppleStoreが開くばかりでどれだけ設定を確認をしても間違いがなかったのです。

しかし、結果的にそもそもデバッグ方法を間違えていることに気がつきました。

実装をする中でヒントになった内容を4箇所記述しているので参考にしてみてください。

なお、FirebaseのYouTubeチャンネル内のチュートリアル動画Getting started with Dynamic Links on iOS - Pt.1 (Firecasts)の内容を引用します。ソースを確認したい方はこちら(7:14~)をご覧ください。

サーチバーから開いてはいけない

デバッグ時、当該のURL(例: https://mandala.mtfum.work)をSafariのコピー&ペースとして開いていました。

すると下記のようなスクショ画面が表示されます(erf=1をリンク生成時につけると表示されなくなるらしい: 「アプリで開く」を実現する、Firebase Dynamic Linksの実装と運用Tips

IMG_F87A00741268-1.jpeg

が、そもそもコピペをしてデバッグすべきではなく、NotesやiMessageなどのアプリ内からクリックして開くべきという教訓を得ました。

では、それでも正しくURLが開かない場合は何を確認するべきなのか?

  1. URLを確認する
  2. アプリIDを再確認する
  3. ユニバーサルリンク設定の確認
  4. Apple App Siteの再確認

上記4つがあるので順に見ていきましょう

1. URLを確認する

Associated Domainsが設定されており、URL SchemesがBundleID(または、独自で設定したスキーム)に合致しているのか。

Xcode11からはSigning & Capabilitiesに位置が変更されたので注意が必要ですね。

Screen Shot 2019-11-02 at 15.55.00.png

2. アプリIDを再確認する

  • FirebaseコンソールのApp Store IDとAppStore上のApple ID,
  • FirebaseコンソールのTeamIDとApple Developer Membership Information TeamID

のそれぞれが正しく反映されているかを確認します。

Firebase Console Apple
Team ID Screen Shot 2019-11-02 at 16.08.01.png Apple Developer Membership InformationTeamID
Apple ID Screen Shot 2019-11-02 at 16.07.58.png Screen Shot 2019-11-02 at 16.06.41.png

3. ユニバーサルリンク設定の確認

偶然、ドメインのユニバーサルリンク設定がOFFになっている場合があります。

解決方法としては、なんらかのアプリ内で当該のリンクを長押しします。

するとプレビューが表示されます。

IMG_4635.PNG

各種アクションを選択できるので、Open in "Mandala"を選択することで修正できます。
この選択により再びリンクが有効になります。

ところが、Open in Safariを選択するとユニバーサルリンクを無効にする んだそうです。
いらねぇ、、

4. Apple App Siteの再確認

関連ファイルが正しく設置されているのかを再確認します。

https://hoge.fuga/apple-app-site-association で自分のサイトを覗いてみましょう。

例: https://mandala.mtfum.work/apple-app-site-association

おわりに

筆者は3. ユニバーサルリンク設定の確認 でユニバーサルリンク設定を有効にすることで問題を解決することができました。
カスタムドメインのバグだ〜!などと騒ぎ立て、もう切腹しようかなと思うくらいに切羽詰まりましたが、たまたま見たYouTube動画に救われるとは夢にも思いませんでした。。
google検索だけでは絶対に見つからなかったです。
皆さんの時間が無駄にならないようにここにドキュメントに記述しました。

FirebaseやGoogleの技術チュートリアル動画はわかりやすく、コンテンツも豊富なのでまずは動画を見てから始めてみてもいいかもしれませんね。。

お読みいただきありがとうございました。
お役に立てば幸いです。
本件においてはドキュメントに記述するようFirebaseサポートに連絡済みです。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away