모바일 SDK딥링크
React Native
AdStage DeepLink 통합 가이드 (React Native)
목차
개요
AdStage DeepLink SDK for React Native는 다음 기능을 제공합니다:
- 실시간 딥링크: URL Scheme, App Link/Universal Links를 통한 즉시 처리
- 디퍼드 딥링크: 앱 설치 후 첫 실행 시 자동 복원
- 동적 딥링크 생성: 서버 API를 통한 추적 가능한 링크 생성
- 어트리뷰션 추적: UTM 파라미터 기반 마케팅 분석
- 크로스 플랫폼: Android/iOS 동일 API
지원 딥링크 타입
- URL Scheme:
myapp://promo/summer - Android App Links:
https://go.myapp.com/abc123 - iOS Universal Links:
https://go.myapp.com/abc123 - 디퍼드 딥링크: 앱 미설치 시 스토어 → 설치 → 앱 실행 시 복원
설치
npm / yarn 설치
iOS 의존성 설치
플랫폼별 설정
iOS 설정
1. ATT (App Tracking Transparency) 권한 (필수)
ios/YourApp/Info.plist에 다음을 추가:
2. URL Scheme 설정
ios/YourApp/Info.plist에 다음을 추가:
3. Universal Links 설정 (선택)
ios/YourApp/YourApp.entitlements에 다음을 추가:
4. AppDelegate.mm 수정
ios/YourApp/AppDelegate.mm 파일에서 딥링크 처리를 위한 메서드를 추가합니다:
Android 설정
1. Maven 저장소 추가 (필수)
android/settings.gradle 또는 android/build.gradle에 추가:
2. minSdkVersion 설정
android/build.gradle에서 확인:
3. AndroidManifest.xml 설정
android/app/src/main/AndroidManifest.xml에 Intent Filter 추가:
4. launchMode 중요 사항
- ✅ singleTask: 기존 Activity 재사용 (권장)
- ⚠️ singleTop: 스택 최상단에 있을 때만 재사용
- ❌ standard: 매번 새 인스턴스 생성 (딥링크 중복 발생)
SDK 초기화
기본 초기화
딥링크 수신 처리
1. 딥링크 리스너 설정
2. DeepLinkData 구조
3. Pending 딥링크 처리
앱이 완전히 종료된 상태에서 딥링크로 실행된 경우:
4. 실전 예제: React Navigation 연동
딥링크 생성
기본 딥링크 생성
CreateDeepLinkRequest 파라미터
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
name | string | ✅ | 딥링크 이름 |
description | string | - | 딥링크 설명 |
campaign | string | - | UTM 캠페인 |
source | string | - | UTM 소스 |
medium | string | - | UTM 미디엄 |
parameters | object | - | 커스텀 파라미터 |
redirectType | string | - | 리다이렉트 타입 (app/store/web) |
androidConfig | object | - | Android 설정 |
iosConfig | object | - | iOS 설정 |
webConfig | object | - | 웹 설정 |
RedirectType 설명
| 타입 | 앱 설치됨 | 앱 미설치 |
|---|---|---|
store | 스토어 이동 | 스토어 이동 |
app | 앱 실행 (실시간 딥링크) | 스토어 이동 → 설치 후 디퍼드 딥링크 |
web | 웹 URL 이동 | 웹 URL 이동 |
유틸리티 함수
Short Path 추출
Android Intent 수동 처리
트러블슈팅
iOS 문제
딥링크가 수신되지 않음
- Info.plist에 URL Scheme이 올바르게 설정되었는지 확인
- AppDelegate.mm에 딥링크 처리 메서드가 추가되었는지 확인
- Universal Links의 경우 Associated Domains가 설정되었는지 확인
ATT 권한 팝업이 표시되지 않음
- Info.plist에
NSUserTrackingUsageDescription키가 있는지 확인
Android 문제
딥링크 중복 수신
android:launchMode="singleTask"설정 확인
딥링크가 수신되지 않음
- AndroidManifest.xml의 Intent Filter 확인
android:exported="true"설정 확인- App Links의 경우 Digital Asset Links 파일 확인
공통 문제
디퍼드 딥링크가 작동하지 않음
- SDK 초기화가 완료된 후 리스너를 설정했는지 확인
checkPendingDeepLink()호출 여부 확인- 네트워크 연결 상태 확인
파라미터가 전달되지 않음
- 딥링크 생성 시
parameters객체에 올바르게 값을 설정했는지 확인

