React Native
React Native 앱에 애드체인 SDK를 연동하는 방법을 소개합니다.
시작하기 전에
SDK를 설치하기 전에 다음을 준비해주세요:
React Native: 0.70 이상
iOS: 14.0 이상
Android: SDK 24 (Android 7.0) 이상
Node.js: 16 이상
appKey & appSecret: 애드체인 ADMIN에서 발급받은 인증 정보 ([email protected]로 문의)
Expo 프로젝트에서도 쓸 수 있습니다. SDK가 자동으로 Expo 환경을 감지합니다.
1. SDK 설치
npm으로 설치
npm install @1selfworld/adchain-sdk-react-native또는 yarn을 쓴다면:
yarn add @1selfworld/adchain-sdk-react-nativeiOS 의존성 설치
iOS는 CocoaPods로 네이티브 라이브러리를 설치해야 합니다:
Android 추가 설정 (필수)
React Native는 네이티브 모듈을 사용하므로, Android 프로젝트에 Adjoe Maven 저장소를 추가해야 합니다.
android/build.gradle 파일을 열어서 다음 내용을 추가하세요:
중요: https://releases.adjoe.io/maven 저장소를 빠뜨리면 Android 빌드 시 Adjoe SDK를 찾을 수 없어서 오류가 발생합니다. Adchain SDK가 내부적으로 Adjoe SDK를 사용하기 때문에 이 설정은 필수입니다.
또는, 프로젝트가 settings.gradle을 사용한다면:
2. 네이티브 설정
Android 매니페스트 설정
android/app/src/main/AndroidManifest.xml 파일을 열어서:
iOS 설정
ios/YourApp/Info.plist 파일에:
3. SDK 초기화
App.tsx 또는 메인 컴포넌트에서 SDK를 초기화합니다:
environment는 개발 중에는 'STAGING'으로, 릴리스할 때는 'PRODUCTION'으로 바꿔주세요.
4. 사용자 로그인
SDK를 쓰려면 사용자 로그인이 필요합니다:
일반적으로 앱의 로그인 화면에서 처리합니다.
5. 오퍼월 띄우기
전체 화면 오퍼월
버튼을 누르면 오퍼월이 열리도록:
임베디드 오퍼월 (화면 일부에 넣기)
화면의 특정 영역에 오퍼월을 넣고 싶다면:
이렇게 하면 탭이나 화면 일부에 오퍼월을 계속 띄워둘 수 있습니다.
6. 이벤트 추적
사용자 행동을 추적하려면:
iOS ATT 권한 요청
iOS에서 광고 추적 권한을 요청하려면 별도로 처리해야 합니다:
Expo가 아니라면 react-native-tracking-transparency 같은 라이브러리를 쓰시면 됩니다.
로그아웃
사용자가 로그아웃할 때:
샘플 프로젝트
전체 예제 코드를 보고 싶으시면 GitHub 샘플 프로젝트를 참고하세요:
React Native 샘플: https://github.com/1selfworld-labs/adchain-sdk-react-sample
Expo 샘플: https://github.com/1selfworld-labs/adchain-sdk-react-native-expo-sample
샘플 프로젝트에는 일반 React Native와 Expo 환경 모두의 예제가 포함되어 있습니다.
다음 단계
기본 설정이 끝났습니다. 이제 다른 기능들을 써볼 수 있습니다:
문제가 생겼다면
Android에서 빌드 에러가 나면:
cd android && ./gradlew clean후 다시 빌드iOS에서 빌드 에러가 나면:
cd ios && pod deintegrate && pod install후 다시 빌드그 외 문제는 문제 해결 페이지 참고
Expo 프로젝트 주의사항
Expo Go 앱에서는 네이티브 모듈을 쓸 수 없어서 SDK가 작동하지 않습니다. Development Build를 만들어서 테스트해야 합니다:
TypeScript
SDK는 TypeScript 타입 정의를 포함하고 있어서, VSCode에서 자동완성이 잘 됩니다. 따로 @types 패키지를 설치할 필요 없습니다.
Last updated