동적 링크 디버깅

페이지 플로 차트 미리보기

자동으로 생성된 플로 차트를 통해 다양한 플랫폼과 구성에서 동적 링크의 동작을 미리 확인하면 동적 링크를 디버그하는 데 도움이 됩니다. 짧거나 긴 동적 링크에 d=1 매개변수를 추가하여 플로 차트를 생성하세요. 예를 들어 짧은 동적 링크의 경우 example.page.link/suffix?d=1을 사용합니다.

미리보기 페이지는 다음과 같습니다.

미리보기 페이지 스크린샷

iOS 자가 진단 도구

iOS에서 동적 링크 통합에 문제가 있으면 동적 링크 SDK 버전 2.1.0 이상에 기본적으로 포함되는 자가 진단 도구를 사용하세요.

코드 어느 위치에서나 다음과 같이 이 도구를 호출할 수 있습니다.

Swift

참고: 이 Firebase 제품은 macOS, Mac Catalyst, tvOS 또는 watchOS 대상에서는 사용할 수 없습니다.
DynamicLinks.performDiagnostics(completion: nil)

Objective-C

참고: 이 Firebase 제품은 macOS, Mac Catalyst, tvOS 또는 watchOS 대상에서는 사용할 수 없습니다.
[FIRDynamicLinks performDiagnosticsWithCompletion:nil];

기본적으로 이 도구는 감지된 오류를 포함하는 디버그 정보를 표준 출력으로 인쇄합니다. 예를 들어 iOS 앱에서 동적 링크를 정상적으로 수신하지 못한다면 자가 진단 도구는 다음과 같은 정보를 출력합니다.

---- Firebase Dynamic Links diagnostic output start ----
Firebase Dynamic Links framework version 2.1.0
System information: OS iOS, OS version 11.0, model iPhone
Current date 2017-08-14 22:52:56 +0000
AutomaticRetrievalEnabled: YES
ERROR: Specified custom URL scheme is com.google.AppInvitesSample.dev but Info.plist do not contain such scheme in CFBundleURLTypes key.
AppID Prefix: EQHXZ8M8AV, Team ID: EQHXZ8M8AV, AppId Prefix equal to Team ID: YES
performDiagnostic detected 1 ERRORS.
---- Firebase Dynamic Links diagnostic output end ----

이 예에서 동적 링크가 작동하지 않은 이유는 맞춤 URL 스키마가 제대로 구성되지 않았기 때문입니다.

일반적인 오류 및 경고

Android 앱에 SHA256이 없습니다. AppLinks가 사용 설정되지 않은 앱입니다.

앱에서 Android 앱 링크를 사용하려면 SHA256 인증서를 생성해야 합니다.

SHA256 인증서를 생성한 후 Firebase 콘솔에서 앱에 추가하세요. SHA 지문 추가를 참조하세요.

'com.example'이라는 Android 패키지 이름이나 iOS 번들 ID를 찾지 못했습니다.

Android 또는 iOS 앱에서 동적 링크를 사용하려면 Firebase 프로젝트에 앱을 추가해야 합니다. 앱 추가를 참조하세요.

iOS 앱에 팀 ID가 없고 UniversalLinks가 사용 설정되지 않은 앱입니다.

앱에서 범용 링크를 사용하려면 Firebase Console에 팀 ID를 추가해야 합니다. App Store ID 또는 팀 ID 추가를 참조하세요.

Apple Member Center의 Membership(멤버십) 탭에서 팀 ID를 확인할 수 있습니다.

iOS 스토어 ID가 존재하지 않는 iOS 번들 ID입니다. 건너뜁니다.

https://itunes.apple.com/us/app/yourapp/idSTOREID에 등록된 앱에 해당 번들 ID가 없다는 의미입니다.

유효하지 않은 iOS 커스텀 스키마

커스텀 스키마는 영문자(A~Z, a~z)로 시작해야 하며 그 뒤에는 영숫자 문자, +,-, 또는 .가 개수 제한 없이 나올 수 있습니다. 또한 'javascript', 'vbscript', 'data', 'blob', 'http', 'https', 'mailto', 'livescript', 'facetime', 'facetime-audio'와 일치해서는 안 됩니다.

프로젝트에 동적 링크를 설정하지 않았습니다

동적 링크를 사용하려면 Firebase 콘솔에서 프로젝트에 동적 링크를 사용 설정해야 합니다.

기타 문제

여기에 나와 있지 않은 문제가 발생하면 Firebase 지원 페이지를 참조하세요.