SDK 통합 문제 해결
통합이 성공했는지 어떻게 테스트할 수 있나요?
다음 방법 중 하나로 통합이 성공했는지 확인할 수 있습니다.
- 데모 광고 단위를 사용하여 광고를 로드하고 광고가 클릭에 반응하는지 확인합니다.
- SDK의 내장 분석기 또는 네이티브 콘솔 도구를 사용합니다.
- 네이티브 광고의 경우 잘못된 통합 표시기를 활성화하여 빨간색으로 변하는지 확인할 수 있습니다.
통합 테스트에 대한 자세한 내용은 Yandex Mobile Ads SDK 섹션을 참조하세요.
구현 버튼이 잘못된 SDK 통합을 반환합니다
가능한 통합 오류
다음과 같은 이유로 통합이 잘못되었을 수 있습니다.
-
어댑터가 연결되지 않았거나 잘못 연결되었습니다. 타사 중재 플랫폼에 연결하는 방법에 대한 지침을 참조하세요.
-
Unity 앱에 Unity 플러그인이 통합되지 않았습니다. 플러그인 통합에 대한 가이드를 참조하세요.
-
광고 단위 ID가 Yandex Advertising Network 인터페이스 또는 타사 중재 계정에 잘못 지정되었습니다. 모든 계정에서 동일한 광고 단위 ID를 사용하고 있는지 확인하세요.
-
Yandex Advertising Network 인터페이스와 타사 중재 계정에 지정된 하한값이 일치하지 않습니다. 모든 계정에서 동일한 하한값을 사용하고 있는지 확인하세요.
Unity와 통합할 때 resource android:attr/lStar not found
오류가 발생합니다
React Native(Android)와 통합할 때, Could not find any matches for com.facebook.react:react-android
오류가 발생합니다
이를 해결하려면, 앱의 android/build.gradle
파일에 allprojects
아래의 코드를 추가하세요.
allprojects {
repositories {
// ...
}
// 이는 react-native 종속성 해결 문제를 수정합니다
configurations.all {
resolutionStrategy.dependencySubstitution {
substitute module("com.facebook.react:react-android") using module("com.facebook.react:react-native:+")
}
}
}
클래스 경로를 찾을 때 Fatal Error
오류가 발생합니다
이는 ProGuard가 빌드 시 조작 및 재배치를 수행하기 때문에 발생할 가능성이 높습니다. 이 오류는 -keepclasseswithmembernames
설정이 proguard config
파일에서 활성화된 경우 발생합니다. 이 코드를 주석 처리하거나 문자열을 삭제하세요.
빌드 시 리소스를 찾을 수 없다는 오류가 발생합니다
Provided block ID doesn't exist
Provided block ID doesn't exist
메시지는 광고 요청 후에 나타나며, Yandex Advertising Network 인터페이스에 광고 단위가 생성되었음에도 불구하고 발생합니다.
앱의 요청에 지정된 광고 단위가 Yandex Advertising Network 인터페이스의 유효한 광고 단위인지 확인하세요.
NoAdsAvailable
오류의 원인은 무엇인가요?
이 오류는 시스템이 광고를 선택할 수 없음을 나타냅니다. 새로운 일치하지 않는 장치에 대한 테스트 중에 발생할 수 있습니다. 시스템이 이러한 장치에 대한 정보를 수집하고 Crypta가 이를 가져오는 데 시간이 걸리기 때문입니다. 이 과정이 완료되면 광고 선택이 시작됩니다. 이 오류는 다음과 같은 이유로도 발생할 수 있습니다.
- 광고 단위에 설정된 CPM 하한선이 너무 높습니다.
- 광고 단위가 보관되었습니다.
- 사용 중인 중재가 러시아에서의 광고를 지원하지 않습니다.
- Yandex Advertising Network 인터페이스의 앱 BundleID가 광고가 요청된 BundleID와 일치하지 않습니다.
오류가 계속되면 지원팀에 문의하세요.
지원팀 문의
광고 요청에 대한 응답이 없고 Banner Rendering Failed with Timeout
오류가 발생합니다
이 오류는 요청 처리에 시간이 너무 오래 걸리는 경우 발생할 수 있습니다. 지원팀에 오류 기록을 제공하여 문의하세요.
지원팀 문의
배너가 성공적으로 로드된 후 보이지 않게 되는 이유는 무엇인가요?
가시성 설정에 android:visibility="gone"
을 적용하고 있는 것일 수 있습니다. 수동으로 또는 코드를 통해 android:visibility="visible"
을 설정하세요.
보상형 동영상의 지속 시간을 제한할 수 있나요?
예, 가능합니다. 지원팀이나 개인 매니저에게 문의하세요.
지원팀 문의
네이티브 광고에서 이미지를 자를 수 있나요?
메인 이미지의 경우 중앙을 기준으로 최대 25%까지 자를 수 있습니다. 아이콘은 확대하거나 자를 수 없지만, 비율 변경 없이 축소할 수 있습니다. 자세한 내용은 네이티브 광고를 참조하세요.
네이티브 광고 단위에 동영상 광고와 디스플레이 광고를 어떻게 삽입하나요?
낮은 필 레이트(fill rate)의 원인은 무엇인가요?
광고 단위의 필 레이트(fill rate)가 낮은 이유는 CPM 하한선, 카테고리 또는 브랜드 차단, 또는 기술적 문제 때문일 수 있습니다. 필 레이트(fill rate)를 높이려면 문제의 원인을 파악하고 해결 조치를 취하세요.
광고의 효과를 높이는 방법에 대한 자세한 내용은 도움말을 참조하세요.
스니퍼 세션(Charles)을 어떻게 기록하나요?
Charles는 컴퓨터에서 실행되는 프록시 서버로, 연결된 장치의 HTTP 및 HTTPS 트래픽을 기록할 수 있도록 합니다. 기록된 세션은 요청된 광고 단위의 데이터, 배치 매개변수, 제공된 배너 정보, 장치의 기술 사양을 포함하고 있어 지원팀이 광고 로딩 및 표시와 관련된 문제를 신속하게 해결하는 데 도움이 됩니다.
Charles 설치
- 공식 사이트에서 Charles를 다운로드하여 컴퓨터에 설치합니다.
- 앱을 처음 실행할 때 네트워크 설정을 자동으로 구성하는 것을 제안하면, Grant Privileges를 클릭하세요.
- 앱은 30일 무료 체험판을 제공합니다. 라이선스 키가 있는 경우, Charles 메뉴에서 Help → Register Charles를 선택하고 앱을 등록합니다.
앱 사용에 대한 자세한 정보는 Charles 문서를 참조하세요.
프록시 구성
모바일 장치의 트래픽을 기록하려면:
- Charles 메뉴에서 Proxy → SSL Proxying Settings를 선택합니다.
- Enable SSL Proxying 옵션을 활성화합니다.
- Include Location을 아래에서 Add를 클릭하고 Host 필드에 별표를 입력합니다. 변경 사항을 저장합니다.
- Charles 메뉴에서 Help → SSL Proxying → Install Root Certificate on a Mobile Device or Remote Browser를 선택합니다. 이후, Charles는 컴퓨터의 IP 주소와 기본 포트 8888에 해당하는 프록시 서버의 IP 주소 및 포트를 표시해야 합니다.
- Charles를 다시 시작합니다.
- 모바일 장치를 컴퓨터와 동일한 Wi-Fi 네트워크에 연결합니다. 네트워크 설정으로 이동하여 수동 프록시 설정을 선택하고 프록시 서버의 IP 주소와 포트를 입력하세요.
인증서 설치
HTTPS 트래픽을 기록하려면 모바일 장치에 Charles 루트 SSL 인증서를 설치하세요. 자세한 내용은 Charles 문서에서 확인하세요.
-
기본 브라우저를 사용하여 http://chls.pro/ssl에서 인증서를 다운로드합니다.
Примечание
인증서를 다운로드할 수 없는 경우, 컴퓨터의 방화벽이 들어오는 연결을 차단하고 있는 것일 수 있습니다. 방화벽 설정에서 Charles가 들어오는 연결을 허용하도록 하고 다시 시도하세요.
-
인증서 설치가 자동으로 시작되지 않으면, 장치 설정에서 인증서 설치 섹션을 찾아 Charles 인증서를 설치합니다. "Credential use"를 "VPN and apps"로 설정하세요. PIN을 설정해야 하는 경우, 해당 필드에 원하는 PIN을 입력하세요.
-
Android 10 이상의 경우에는 광고를 요청하는 앱(APK)을 구성합니다.
-
res/xml
폴더에 다음 텍스트가 포함된network_security_config.xml
파일을 만듭니다.<?xml version="1.0" encoding="utf-8"?> <network-security-config> <base-config> <trust-anchors> <!-- Trust preinstalled CAs --> <certificates src="system" ></certificates> <!-- Trust user added CAs --> <certificates src="user" ></certificates> </trust-anchors> </base-config> </network-security-config>
-
AndroidManifest.xml
파일의application
섹션에 속성을 추가합니다.<manifest> ... <application android:networkSecurityConfig="@xml/network_security_config"> ... </application> </manifest>
-
-
Safari를 사용하여 http://chls.pro/ssl에서 인증서를 다운로드합니다.
Примечание
인증서를 다운로드할 수 없는 경우, 컴퓨터의 방화벽이 들어오는 연결을 차단하고 있는 것일 수 있습니다. 방화벽 설정에서 Charles가 들어오는 연결을 허용하도록 하고 다시 시도하세요.
-
인증서 설치가 자동으로 시작되지 않으면, 장치 설정의 Profile 섹션으로 이동하여 Charles 인증서를 선택하고 설치합니다.
-
장치 설정에서 General → About → Certificates Trust Settings로 이동하여 Charles 인증서에 대한 신뢰를 활성화합니다.
세션 기록
트래픽 기록을 시작하거나 중지하려면 Charles 도구 모음에서 /
을 클릭하세요. 기록이 진행 중일 때 버튼은
와 같이 보입니다.
광고를 요청하는 앱에서 화면을 새로 고침하세요. 세션에 광고 다운로드 URL( mobile.yandexadexchange.net/v4/ad
)이 나타나는지 확인하세요. Charles 메뉴에서 File → Save Session As... 를 선택하고 .chls
확장자로 파일을 저장하세요.
Совет
디버깅이 완료되면 장치에서 인증서를 삭제하고 프록시를 비활성화하세요.