Introduction
全く同一のコードからビルドしたのに掲題のような事象が先方で発生。
iOS のバージョンや端末の違いから切り分けを行ったところ…
原因は Flutter のバージョンであることが判明。
何故?
How to resolve?
Flutter の 3.27 から Universal Link に関するデフォルトの設定が変更になった。
Flutter の公式サイトの Adjust iOS build settings にて下記の記述がある。
Version note
If you use a Flutter version earlier than 3.27, you need to manually opt in to deep linking by adding the key and value pairFlutterDeepLinkingEnabled
andYES
toinfo.Plist
.
Note
If you’re using third-party plugins to handle deep links, such as app_links, Flutter’s default deeplink handler will break these plugins.
If you use a third-party plugin, add the key and value pairFlutterDeepLinkingEnabled
andNO
toinfo.Plist
.
FlutterDeepLinkingEnabled
という info.Plist
に記載する値のデフォルト値が 3.27 から YES
に変更されたので、app_links のようなサードパーティの Universal Link を使用するパッケージを使う場合は明示的に FlutterDeepLinkingEnabled
に対して NO
を設定しなさい、という記述だ。
具体的には ios/Runner/Info.plist
を下記のようにする。
1 | <?xml version="1.0" encoding="UTF-8"?> |
修正後は意図した結果になる。