시작하기 전에: SDK 전제 조건
Singular SDK 연동의 단계를 따르세요 :계획 및 전제 조건의 단계를 따르세요.
이러한 단계는 모든 Singular SDK 연동의 전제 조건입니다.
SDK 설치
프로젝트에 Singular React SDK를 추가하려면:
- 프로젝트의 루트 디렉토리에서 터미널을 엽니다.
-
다음 명령을 사용하여 프로젝트에 SDK 패키지를 다운로드합니다:
npm install singular-react-native --save
- React Native 0.60 이상을 사용하는 경우 Singular 패키지가 프로젝트에 자동 링크됩니다.
React Native 버전 0.59 이하를 사용하는 경우 다음을 실행하여 Singular 패키지의 네이티브 브리지 코드를 프로젝트에 링크하세요:
react-native link singular-react-native
-
Expo를 사용하는 경우: 위에서 설명한 대로 Singular SDK를 설치한 후, app.json 또는 app.config.js의 플러그인 배열에 패키지를 추가합니다:
"expo": { "plugins": ["singular-react-native"] }
사전 요구 사항 설정
iOS 사전 요구 사항
프로젝트의 루트 디렉토리에서 다음 명령을 실행합니다:
cd ios && pod install
Android 사전 요구 사항
project/build.gradle 파일의 모든 프로젝트 섹션에서 앱의 Maven 리포지토리에 다음을 추가합니다:
allprojects {
repositories {
maven { url 'https://maven.singular.net/' }
}
}
필수 권한 추가
AndroidManifest.xml 파일의 <manifest> 태그 아래에 이러한 권한을 추가합니다:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="BIND_GET_INSTALL_REFERRER_SERVICE" />
<uses-permission android:name="com.android.vending.CHECK_LICENSE" />
<uses-permission android:name="com.google.android.gms.permission.AD_ID" />
삼성 갤럭시 스토어의 설치 리퍼러를 지원하려면 다음을 추가합니다:
<queries>
<package android:name="com.sec.android.app.samsungapps" />
</queries>
Singular SDK에 대한 전이 종속성을 비활성화한 경우 앱/build.gradle에 다음을 추가합니다:
dependencies {
...
implementation 'com.android.installreferrer:installreferrer:2.2'
implementation 'com.google.android.gms:play-services-appset:16.0.0'
...
}
프로가드 사용 시 요구 사항
리액트 네이티브 안드로이드에서 Singular SDK용 프로가드 구성하기
Singular 안드로이드 SDK를 React Native 안드로이드 앱에 연동할 때, 릴리스 빌드에서 SDK가 올바르게 작동하도록 하기 위해 특정 ProGuard 규칙을 추가해야 합니다. 코드를 최적화하고 난독화하기 위해 ProGuard(또는 최신 대체 버전인 R8)는 React Native 릴리스 빌드에서 기본적으로 활성화됩니다. 적절한 ProGuard 규칙이 없으면 Singular SDK 또는 해당 종속성이 제거되거나 난독화되어 런타임 문제를 일으킬 수 있습니다.
다음 단계에 따라 Singular SDK용 ProGuard를 구성하세요:
- ProGuard 규칙 파일 찾기: React Native 프로젝트에서 android/app/proguard-rules.pro 파일로 이동합니다. 이 파일에는 앱에 대한 사용자 정의 ProGuard 규칙이 포함되어 있습니다.
- Singular SDK ProGuard 규칙을 추가합니다: android/app/proguard-rules.pro 에 다음 줄을 추가하여 Singular SDK와 해당 종속성을 유지합니다:
# Preserve Singular SDK classes
-keep class com.singular.sdk.** { *; }
# Preserve Android Install Referrer library
-keep public class com.android.installreferrer.** { *; }
# Uncomment the following line if you are using the Singular 'revenue' function with Google Play Billing Library
#-keep public class com.android.billingclient.** { *; }
SDK 연동
참고: Singular SDK를 구현할 때 GDPR, CCPA 및 COPPA를 포함하되 이에 국한되지 않는 비즈니스를 수행하는 지역에서 제정된 다양한 개인정보 보호법을 준수해야 한다는 점을 잊지 마세요. 자세한 내용은 SDK 옵트인 및 옵트아웃 사례를 참조하세요.
앱을 열 때마다 SDK 초기화 코드를 호출해야 합니다. 이는 모든 Singular 어트리뷰션 기능의 전제 조건이며, 또한 새로운 사용자 세션을 Singular로 전송합니다. 세션은 사용자 리텐션을 계산하는 데 사용됩니다.
Singular 라이브러리 가져오기
App.js 또는 App.tsx 파일에 다음 코드를 추가하여 Singular 클래스를 가져옵니다.
import {Singular, SingularConfig, Events, Attributes} from 'singular-react-native';
Singular SDK 초기화하기
- Singular SDK를 초기화하기 전에 SingularConfig 객체를 만들어야 합니다. 이 객체에는 SDK 키와 SDK 비밀 번호가 포함되어 있습니다(Singular 계정에 로그인하고"개발자 도구 > SDK 연동 > SDK 키"로 이동하여 얻을 수 있습니다).
- 선택적으로 다양한 SDK 기능을 활성화하는 설정을 추가할 수 있습니다.
- 메타 인스톨 리퍼러 어트리뷰션 지원
"메타 인스톨 리퍼러" 어트리뷰션을 활성화하는 데 필요한 SDK 구성입니다 :
- Singular 구성 개체에서 Facebook 앱 ID를 입력합니다.
// To enable META Install Referrer config.withFacebookAppId('INSERT YOUR FACEBOOK APP ID HERE');
- Singular 구성 개체에서 Facebook 앱 ID를 입력합니다.
- 그런 다음 init 메서드를 사용하여 SDK를 초기화하여 SingularConfig 객체를 전달합니다.
예를 들어
const config = new SingularConfig('<SDK KEY>', '<SDK SECRET>');
// Optional settings:
// Set user ID if known at time of initialization
config.withCustomUserId('274e9db5c836093499df921be5');
// To enable META Install Referrer
config.withFacebookAppId('Insert your Facebook App ID here');
// Enables deep linking
config.withSingularLink(callBackFunction);
// iOS - Enable SKAdNetwork
config.withSkAdNetworkEnabled(true);
// iOS - Wait 5m for tracking authorization before sending any events
config.withWaitForTrackingAuthorizationWithTimeoutInterval(300);
// Initialize Singular SDK
Singular.init(config);
Singular.init 메서드 | |
---|---|
설명 | Singular SDK 초기화 |
사용 예시 |
|
SingularConfig 옵션
".with" 메서드 | 설명 |
withCustomUserId(user_id) | Singular에 사용자 ID를 전송합니다(자세히 알아보기). |
위드페이스북앱아이디(페이스북_앱_아이디) |
참고: 메타 인스톨 리퍼러 어트리뷰션을 활성화하려면 Singular 컨피규레이션 객체에 페이스북 앱 ID를 제공하세요. |
withSingularLink(callBackFunction) | 딥링킹 활성화(자세히 알아보기) |
withSessionTimeoutInSec(seconds) | 세션 시간 초과 수정(자세히 알아보기) |