UniversalLinksでのお問い合わせ,運用事例

# 概要
Universal Links導入後の問い合わせや質問対応の調査メモです。

##### 実装方法はこちらなどを参考にしてください。
> URLスキーム・独自ディープリンク実装に代わる、Universal Links(iOS 9で導入)でより良いUXを実現
http://qiita.com/mono0926/items/2bf651246714f20df626

> Universal Links日本語ガイドhttps://developer.apple.com/jp/documentation/General/Conceptual/AppSearch/UniversalLinks.html

##### 過去の自分のUniversalLinks記事：
>[iOS11からのUniversalLinksのいいところと悪いところ?](https://qiita.com/keroppi0_0/items/4dbe542aba966dcc548f)
> [apple-app-site-associationのpaths(遷移対象パス)の作り方（UniversalLinks対応）](https://qiita.com/keroppi0_0/items/1a7fab4a8cc78412d30c)


#　基本：動作確認方法
- 1.実装完了したら、アプリをインストールする。
- 2.飛ばしたいリンクをWebページ/メモ帳などからタップ
- 3.アプリに遷移します。

# 「アプリに飛ばなくなりました」〜基本確認項目〜
#### :white_check_mark: **設定ファイルは正しく引けますか？(パスはあってますか？)**

| 例：ヤフーショッピング  | 
|:-----------------|
| https://shopping.yahoo.co.jp/apple-app-site-association |
|<img src="https://qiita-image-store.s3.amazonaws.com/0/187252/e24fab15-80f0-b77b-0100-12ed0a3d7775.png" width=60%>|
→:raising_hand_tone2:「設定が変わっていて引けないなどあるかもしれないので念のため確認しましょう。」
<br><br>


#### :white_check_mark: **Webページを開いた際に、画面上部に「アプリで開く」ボタンが出ていますか？**
→:raising_hand_tone2:「もしボタンがない場合、iOS側が正しくリンクを認識していません。」

<TABLE><TR>
 <TH COLSPAN=2>例：ヤフーショッピング(https://shopping.yahoo.co.jp/)</TD>
</TR>
<TR>
 <TD BGCOLOR=GREEN><img src="https://qiita-image-store.s3.amazonaws.com/0/187252/34409711-ae4c-80f4-4bd8-fe6e0e75a373.png" width=50%>→</TD>
　<TD BGCOLOR=GREEN><img src="https://qiita-image-store.s3.amazonaws.com/0/187252/483da73d-a0f2-369b-f883-eedcc4702006.png" width=50%></TD>
</TR>
</TABLE>

→:raising_hand_tone2:「正常に認識できている場合、webページを開いたときに画面上部に「<アプリ名>」で開くボタンがあります（引っ張ると出てきます、隠れてます）」

| (:warning:過去に確認されたレアケース)|
|:-----------------|
| :one:実装も完了していて無事に動作していたのに特定の端末でUniversalLinksが効かなくなった。<br>*原因不明の際の対処法*<br>`→アプリを1度消す`<br>`→端末再起動（あまり効果なさそうです）`<br>`→Safariのキャッシュクリア（ゴミデータのせいか認識しないことがありました）`<br>| 
| :two:特殊なプロファイル等がiPhone端末に入っていると、<br>apple-app-site-associationが正常に取得できなかったことがあります。|

# 「特定のURLのときにアプリに遷移しません」（飛ばない例外パターンがあります)
- :warning:**同一ドメインだと飛ばない制約があります。**

| 例：アプリに飛ぶ  | 
|:-----------------|
| ヤフーショッピングTOPページ<br>https://shopping.yahoo.co.jp/<br>↓<br>商品詳細<br>https://store.shopping.yahoo.co.jp/monomode/san-665a.html

| 例：アプリに飛ばない  | 
|:-----------------|
| ヤフーショッピングTOPページ<br>https://shopping.yahoo.co.jp/<br>↓<br>製品ページ<br>https://shopping.yahoo.co.jp/products/5d1ef998ed

→:raising_hand_tone2:「こちらの場合、shopping.yahoo.co.jpという同一ドメインのため、アプリに飛びません。」(iOS11.2現在)

```
メモ帳やメールリンクなどからは飛びますし、
Webページを開いたら画面上部に「アプリで開く」ボタンも表示されています。
こちらは許容するしかなさそうです。
```


# 「アプリに飛ばしたくないです」
- iOS10まで

```
アプリに飛んだあと画面右上のボタンを押すことでWebに戻ることができました。
また、1度Webに戻るとそれ以降はUniversalLinksは自動で発動せず常にWebで開くようになっていました。
（再度アプリで開きたい場合、画面上部にある「アプリで開く」ボタンを押すことでアプリに遷移するようになります）
```

- iOS11から

```
このボタンがなくなったので拒否することができなくなりました。
アプリに飛んでしまうのが嫌なとき、Webブラウザでリンクを長押しして「開く」or「新規タブで開く」とアプリに飛びません！！
```

→:raising_hand_tone2:「アプリを消していただくか、リンクを長押しして「開く」or「新規タブで開く」をタップしてください」
![image.png](https://qiita-image-store.s3.amazonaws.com/0/187252/0381de2c-3eca-fac8-b7a4-a2b705434806.png)

- (詳細はこちら： [Webブラウザからアプリに飛んだあと、アプリからWebに戻る方法がない・・](https://qiita.com/keroppi0_0/items/4dbe542aba966dcc548f#%E3%81%84%E3%81%BE%E3%81%84%E3%81%A1%E3%81%AA%E7%82%B9web%E3%83%96%E3%83%A9%E3%82%A6%E3%82%B6%E3%81%8B%E3%82%89%E3%82%A2%E3%83%97%E3%83%AA%E3%81%AB%E9%A3%9B%E3%82%93%E3%81%A0%E3%81%82%E3%81%A8%E3%82%A2%E3%83%97%E3%83%AA%E3%81%8B%E3%82%89web%E3%81%AB%E6%88%BB%E3%82%8B%E6%96%B9%E6%B3%95%E3%81%8C%E3%81%AA%E3%81%84))


# 「緊急でUniversalLinksを止めたいです」
- 無理です( ´ ▽ ` )
- 通常の方法だと、アプリのリリースが必要です。(apple-app-site-associationからパスを消す or Associated Domainsの設定を消す)
- 別途設定ファイルを読み込ませるようにして、EMGモードなどを設定しておくと良いかもしれません。


:bow:以上、ありがとうございました。:bow: