SDK 사용 중 자주 발생하는 문제들과 해결 방법입니다.
"SDK initialization failed" 에러가 나요
가능한 원인:
appKey나 appSecret이 틀림
초기화할 때 넣은 값이 맞는지 확인하세요. 공백이 들어가거나 복사할 때 잘못됐을 수 있습니다.
인터넷 연결 안 됨
SDK 초기화할 때 애드체인 서버에 연결해서 설정을 받아옵니다. 인터넷 연결을 확인하세요.
해결 방법:
복사 // Android
val config = AdchainSdkConfig (
appKey = "YOUR_APP_KEY" ,
appSecret = "YOUR_APP_SECRET"
)
AdchainSdk. initialize (
application = this ,
sdkConfig = config
)
// 초기화 상태 확인
Handler (Looper. getMainLooper ()). postDelayed ({
if (AdchainSdk. isInitialized ()) {
Log. d ( "AdChain" , "초기화 성공" )
} else {
Log. e ( "AdChain" , "초기화 실패 - 네트워크나 인증키 확인 필요" )
}
}, 2000 ) // 2초 후 확인 문제가 계속되면 로그를 복사해서 [email protected] 로 보내주시면 더 빠르게 도와드릴 수 있습니다.
초기화는 됐는데 isInitialized()가 false예요
SDK 초기화는 백그라운드에서 비동기로 진행됩니다. initialize() 호출 직후에는 false일 수 있습니다:
참고 : 일반적으로 앱이 시작되고 사용자가 로그인하기 전까지 충분한 시간이 있으므로, 명시적으로 대기할 필요는 없습니다.
확인사항:
userId는 일반적인 문자, 숫자, 하이픈, 언더스코어만 쓰는 게 안전합니다. 이모지 같은 건 피하세요.
로그인은 됐는데 오퍼월이 안 열려요
로그인 콜백을 받은 다음에 오퍼월을 열어야 합니다:
Android:
인터넷 권한 확인
AndroidManifest.xml에 있나요?
Cleartext HTTP 설정
일부 광고가 HTTP를 씁니다. AndroidManifest.xml에:
iOS:
App Transport Security 확인
Info.plist에:
네트워크 권한
시뮬레이터가 아닌 실제 기기에서 테스트해보세요.
첫 로딩은 WebView 초기화 + 콘텐츠 로드 때문에 2-3초 걸립니다. 정상입니다.
빠르게 하려면:
네트워크 상태 확인 (Wi-Fi vs 모바일 데이터)
이미지나 리소스가 많은 화면이면 시간이 더 걸릴 수 있음
"Placement not found" 에러가 나요
placementId가 애드체인 서버에 등록되지 않았을 수 있습니다. 테스트 중이라면 아무 값이나 써도 됩니다. 프로덕션에서 특정 placement를 쓰려면 [email protected] 로 문의하세요.
"Duplicate class" 에러:
안 되면:
"Unable to resolve dependency" 에러:
settings.gradle.kts에 JitPack 저장소가 있나요?
"Could not find io.adjoe:adjoe-sdk-android" 에러:
이 에러는 Adjoe SDK를 찾을 수 없다는 뜻입니다. AdChain SDK가 내부적으로 Adjoe SDK를 사용하기 때문에 Adjoe Maven 저장소를 추가해야 합니다.
settings.gradle.kts 또는 build.gradle에 다음을 추가하세요:
또는 build.gradle (allprojects):
저장소를 추가한 후 Gradle Sync를 다시 실행하세요.
React Native에서 Adjoe SDK 에러:
React Native 프로젝트도 동일한 문제가 발생할 수 있습니다. android/build.gradle 파일에 Adjoe 저장소를 추가하세요:
자세한 내용은 Android 시작하기 또는 React Native 시작하기 를 참고하세요.
CocoaPods 에러:
"Library not found" 에러:
Xcode에서 .xcworkspace 파일을 열었나요? (.xcodeproj가 아니라)
"Undefined symbol" 에러:
Xcode에서 Clean Build Folder (Cmd+Shift+K) 후 다시 빌드.
React Native 빌드 에러
Metro bundler 에러:
Android 빌드 에러:
iOS 빌드 에러:
trackEvent()를 호출했는데 대시보드에 안 보여요
이벤트는 즉시 전송되지 않고 배치로 모아서 보냅니다 (기본: 10개 또는 30초마다).
즉시 보내려면:
그리고 대시보드에 반영되려면 몇 분 걸릴 수 있습니다.
릴리스 빌드에서 크래시가 나면 ProGuard 규칙을 추가하세요:
또는 Android Studio의 Logcat에서 "AdChain" 필터.
Xcode Console에서 "AdChain" 검색.
또는 터미널에서:
위 방법으로도 안 되면:
환경 정보 :
OS 버전 (Android 12, iOS 16 등)
보통 1-2일 내로 답변 드립니다.