Flutter 에서 앱 종료 상태에서 Dynamic Link가 전달되지 않을 때 (iOS)
Flutter 에서 dynamic link (v4.1.1) 모듈을 적용해 보면
- 앱이 없을 때 다운로드 하고 설치 후 실행될 때 딥링크가 전달된다.
- 앱이 종료상태에 있을 때 (링크를 클릭하면) 앱이 실행되고 딥링크가 전달된다.
- 앱이 백그라운드 상태에 있을 때 (링크를 클릭하면) 앱이 실행되고 딥링크가 전달된다.
이렇게 동작하기를 기대하는데, 2번은 잘 안된다. 가이드에 따르면
final PendingDynamicLinkData initialLink =
await FirebaseDynamicLinks.instance.getInitialLink();
if (initialLink != null) {
movePage(initialLink.link);
}
initialLink
에서 전달될 것으로 기대되지만 2번의 경우 항상 null이 리턴된다.
그래서,
앱이 실행될 때 전달된 Universal Link를 직접 가지고 오도록 하여 처리했다. uni_link 라이브러리를 사용했고 다음과 같이 처리했다.
final PendingDynamicLinkData initialLink =
await FirebaseDynamicLinks.instance.getInitialLink();
if (initialLink != null) {
movePage(initialLink.link);
return;
}
final String deepLink = await getInitialLink();
if (deepLink != null && deepLink.isNotEmpty) {
FirebaseDynamicLinks.instance
.getDynamicLink(Uri.parse(deepLink))
.then((link) => movePage(link.link));
}
Author And Source
이 문제에 관하여(Flutter 에서 앱 종료 상태에서 Dynamic Link가 전달되지 않을 때 (iOS)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@iamchiwon/Flutter-Dynamic-Link저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)