Android용 인터스티셜 광고 통합
광고 유닛을 초기화하고, 리스너를 설정하고, 광고를 로드하고, 유효성 확인하고, 적절한 시점에 표시하여 Android 앱에 인터스티셜 광고 쉽게 통합할 수 있습니다.
읽는 시간 5분최근 업데이트: 9시간 전
Unity 레벨플레이 인터스티셜 광고 전체 화면 광고 유닛으로, 일반적으로 앱 라이프사이클 동안 자연스러운 전환 지점에서 게재됩니다.
필수 조건
- 레벨플레이 SDK를 애플리케이션 올바르게 연동했는지 확인합니다. 통합은 여기 설명되어 있습니다.
- 레벨플레이 초기화 API 사용하여 SDK를 초기화해야 합니다.
- 레벨플레이 대시보드에서 AdUnitID를 찾습니다.
인터스티셜 광고 오브젝트 생성
인터스티셜 광고 오브젝트의 생성은 onInitSuccess 콜백을 수신한 후에 수행해야 합니다.
오브젝트 세션 전체에 걸쳐 여러 로드와 표시를 처리할 수 있는 재사용 가능한 인스턴스. 생성 후에는 동일한 광고 유닛의 광고를 로드하고 표시하는 데 사용해야 합니다.
더 고급 구현을 위해 필요한 경우 여러 개의 인터스티셜 광고 객체를 생성할 수 있습니다.
LevelPlayInterstitialAd mInterstitialAd = new LevelPlayInterstitialAd("adUnitId");
val mInterstitialAd = LevelPlayInterstitialAd("adUnitId")
인터스티셜 광고 리스너 설정
코드에 LevelPlayInterstitialAdListener를 구현하여 광고 전송에 대해 알 수 있습니다.
- 인터스티셜 광고 광고를 로드하기 전에 리스너를 설정하는 것이 좋습니다.
- 각 인터스티셜 광고 광고에는 고유한 리스너 구현이 있어야 합니다.
- 콜백은 메인 스레드 실행됩니다.
// Create the interstitial ad objectLevelPlayInterstitialAd mInterstitialAd = new LevelPlayInterstitialAd("adUnitId");mInterstitialAd.setListener(new LevelPlayInterstitialAdListener() { @Override public void onAdLoaded(LevelPlayAdInfo levelPlayAdInfo) { // Ad was loaded successfully } @Override public void onAdLoadFailed(LevelPlayAdError levelPlayAdError) { // Ad load failed } @Override public void onAdDisplayed(LevelPlayAdInfo levelPlayAdInfo) { // Ad was displayed and visible on screen } @Override public void onAdDisplayFailed(LevelPlayAdError levelPlayAdError, LevelPlayAdInfo levelPlayAdInfo) { // Ad fails to be displayed // Optional } @Override public void onAdClicked(LevelPlayAdInfo levelPlayAdInfo) { // Ad was clicked // Optional } @Override public void onAdClosed(LevelPlayAdInfo levelPlayAdInfo) { // Ad was closed // Optional } @Override public void onAdInfoChanged(LevelPlayAdInfo levelPlayAdInfo) { // Called after the ad info is updated. 다른 인터스티셜 광고 광고가 로드되었을 때 사용 가능하며 CPM/Rate가 더 높습니다. // Optional }});
// Create the interstitial ad object val mInterstitialAd = LevelPlayInterstitialAd("adUnitId")mInterstitialAd.setListener(object : LevelPlayInterstitialAdListener { override fun onAdLoaded(levelPlayAdInfo: LevelPlayAdInfo) { // Ad was loaded successfully } override fun onAdLoadFailed(levelPlayAdError: LevelPlayAdError) { // Ad load failed } override fun onAdDisplayed(levelPlayAdInfo: LevelPlayAdInfo) { // Ad was displayed and visible on screen } 오버라이드 fun onAdDisplayFailed(levelPlayAdError: LevelPlayAdError, levelPlayAdInfo: LevelPlayAdInfo) { // Ad fails to be displayed // Optional } override fun onAdClicked(levelPlayAdInfo: LevelPlayAdInfo) { // Ad was clicked // Optional } override fun onAdClosed(levelPlayAdInfo: LevelPlayAdInfo) { // Ad was closed // Optional } override fun onAdInfoChanged(levelPlayAdInfo: LevelPlayAdInfo) { // Called after the ad info is updated. 다른 인터스티셜 광고 광고가 로드되었을 때 사용 가능하며 CPM/Rate가 더 높습니다. // Optional }})
레벨플레이 광고 정보
LevelPlayAdInfo 파라미터에는 로드된 광고에 대한 정보가 포함되어 있습니다.
인터스티셜 광고 로드
인터스티셜 광고를 로드하려면 loadAd를 사용합니다.
mInterstitialAd.loadAd();
mInterstitialAd.loadAd()
인터스티셜 광고 표시
LevelPlayInterstitialAdListener API를 사용하여 onAdLoaded 콜백을 수신한 후 인터스티셜 광고를 표시합니다.
- 공유하는 데 필요한 활동입니다.
- 플레이스먼트를 사용하는 경우 아래의 플레이스먼트 섹션에 표시된 대로 showAd API에서 플레이스먼트 이름을 전달합니다.
- 광고가 사용자 성공적으로 표시되면 로딩 단계를 반복하여 다른 광고를 로드할 수 있습니다.
public void showInterstitialAd() { // Check that ad is ready if (mInterstitialAd.isAdReady()) { // Show ad mInterstitialAd.showAd(this); }}
fun showInterstitialAd() { // Check that ad is ready if (mInterstitialAd.isAdReady()) { // Show ad mInterstitialAd.showAd(this) }}
광고가 준비되었는지 확인
표시 실패를 방지하고 광고가 올바르게 표시되었는지 확인하기 위해 showAd API를 호출하기 전에 다음 API를 사용하는 것이 좋습니다.
isAdReady – 광고가 성공적으로 로드되고 광고 유닛이 제한되지 않거나 거짓이 아닌 경우 true를 반환합니다.
isPlacementCapped – 유효한 플레이스먼트가 제한되면 true를 반환합니다. 플레이스먼트가 유효하지 않거나 제한이 없는 경우 이 API false를 반환합니다.
// Check that ad is ready and that the placement is not capped if (mInterstitialAd.isAdReady() && !LevelPlayInterstitialAd.isPlacementCapped(placementName)) { mInterstitialAd.showAd(this, placementName);}
// Check that ad is ready and that the placement is not cappedif (mInterstitialAd.isAdReady() && !LevelPlayInterstitialAd.isPlacementCapped(placementName)) { mInterstitialAd.showAd(this, placementName)}
Placements
레벨플레이 대시보드에서 인터스티셜 광고의 플레이스먼트 속도와 한도를 지원합니다.
인터스티셜 광고에 대한 플레이스먼트가 설정된 경우 특정 플레이스먼트에 광고를 게재하려면 showAd 메서드를 호출합니다.
public void showInterstitialAdWithPlacement() { // Check that ad is ready and that the placement is not capped if (mInterstitialAd.isAdReady() && !LevelPlayInterstitialAd.isPlacementCapped(placementName)) { // Show ad with placement mInterstitialAd.showAd(this, placementName); }}
fun showInterstitialAdWithPlacement(placementName: 문자열) { // Check that ad is ready and that the placement is not capped if (mInterstitialAd.isAdReady() && !LevelPlayInterstitialAd.isPlacementCapped(placementName)) { // Show ad with placement mInterstitialAd.showAd(this, placementName) }}
인터스티셜 광고 전체 구현 예시
public class InterstitialAdActivity extends Activity implements LevelPlayInterstitialAdListener { private LevelPlayInterstitialAd mInterstitialAd; void createInterstitialAd() { mInterstitialAd = new LevelPlayInterstitialAd("adUnitId"); mInterstitialAd.setListener(this); } void loadInterstitialAd() { // Used to load or reload the ad mInterstitialAd.loadAd(); } void showInterstitialAd() { if (mInterstitialAd.isAdReady()) { mInterstitialAd.showAd(this); } } void showInterstitialAd(@NonNull String placementName) { // Check that ad is ready and that the placement is not capped if (mInterstitialAd.isAdReady() && !LevelPlayInterstitialAd.isPlacementCapped(placementName)) { mInterstitialAd.showAd(this, placementName); } } // LevelPlayInterstitialAdListener methods @Override public void onAdLoaded(@NonNull LevelPlayAdInfo adInfo) {} @Override public void onAdLoadFailed(@NonNull LevelPlayAdError error) {} @Override public void onAdDisplayed(@NonNull LevelPlayAdInfo adInfo) {} @Override public void onAdClosed(@NonNull LevelPlayAdInfo adInfo) {} @Override public void onAdClicked(@NonNull LevelPlayAdInfo adInfo) {} @Override public void onAdDisplayFailed(@NonNull LevelPlayAdError error, @NonNull LevelPlayAdInfo adInfo) {} @Override public void onAdInfoChanged(@NonNull LevelPlayAdInfo adInfo) {} }
class InterstitialAdActivity : Activity(), LevelPlayInterstitialAdListener { private latinit var mInterstitialAd: LevelPlayInterstitialAd fun createInterstitialAd() { mInterstitialAd = LevelPlayInterstitialAd("adUnitId") mInterstitialAd.setListener(this) } fun loadInterstitialAd() { mInterstitialAd.loadAd() } fun showInterstitialAd() { if (mInterstitialAd.isAdReady()) { mInterstitialAd.showAd(this) } } fun showInterstitialAd(placementName: 문자열) { // Check that ad is ready and that the placement is not capped if (mInterstitialAd.isAdReady() && !LevelPlayInterstitialAd.isPlacementCapped(placementName)) { mInterstitialAd.showAd(this, placementName) } } // LevelPlayInterstitialAdListener methods override fun onAdLoaded(adInfo: LevelPlayAdInfo) {} 오버라이드 fun onAdLoadFailed(오류: LevelPlayAdError) {} override fun onAdInfoChanged(adInfo: LevelPlayAdInfo) {} override fun onAdDisplayed(adInfo: LevelPlayAdInfo) {} 오버라이드 fun onAdDisplayFailed(오류: LevelPlayAdError, adInfo: LevelPlayAdInfo) {} override fun onAdClicked(adInfo: LevelPlayAdInfo) {} override fun onAdClosed(adInfo: LevelPlayAdInfo) {}}
레벨플레이 Mediation 데모 앱
통합 데모 애플리케이션 앱에 인터스티셜 광고 광고 유닛 API를 통합하는 방법을 보여 줍니다.
통합 테스트 제품군과의 통합 여부 확인
다음 단계
추가 인터스티셜 광고 광고 네트워크를 연동하거나 추가 광고 형식을 설정 Unity 통합 가이드를 따르십시오.