import android.os.Bundle;
import android.util.Log;
import androidx.appcompat.app.AppCompatActivity;
import net.adwhale.sdk.mediation.ads.AdWhaleMediationAds;
import net.adwhale.sdk.mediation.ads.AdWhaleMediationFullScreenContentCallback;
import net.adwhale.sdk.mediation.ads.AdWhaleMediationOnInitCompleteListener;
import net.adwhale.sdk.mediation.ads.AdWhaleMediationRewardAd;
import net.adwhale.sdk.mediation.ads.AdWhaleMediationRewardedAdLoadCallback;
import net.adwhale.sdk.utils.AdWhaleLog;
public class MainActivity extends AppCompatActivity {
private AdWhaleMediationRewardAd adWhaleMediationRewardAd;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 로거 설정
AdWhaleLog.setLogLevel(AdWhaleLog.LogLevel.None);
// 초기화 코드
AdWhaleMediationAds.init(this, new AdWhaleMediationOnInitCompleteListener() {
@Override
public void onInitComplete(int statusCode, String message) {
Log.i(MainActivity.class.getSimpleName(), ".onInitComplete(" + statusCode + ", " + message + ");");
}
});
// 보상형광고 생성
adWhaleMediationRewardAd = new AdWhaleMediationRewardAd("발급받은 placement uid 값");
// 보상형광고 콜백 리스너 등록
adWhaleMediationRewardAd.setAdWhaleMediationFullScreenContentCallback(new AdWhaleMediationFullScreenContentCallback() {
@Override
public void onAdClicked() {
Log.i(MainActivity.class.getSimpleName(), ".onAdClicked();");
}
@Override
public void onAdDismissed() {
Log.i(MainActivity.class.getSimpleName(), ".onAdDismissed();");
}
@Override
public void onFailedToShow(int statusCode, String message) {
Log.i(MainActivity.class.getSimpleName(), ".onFailedToShow(" + statusCode + ", " + message + ");");
}
@Override
public void onAdShowed() {
Log.e(MainActivity.class.getSimpleName(), ".onAdShowed();");
}
});
// 보상형광고 로드
adWhaleMediationRewardAd.loadAd(new AdWhaleMediationRewardedAdLoadCallback() {
@Override
public void onAdLoaded(AdWhaleMediationRewardAd adWhaleMediationRewardAd, String message) {
Log.i(MainActivity.class.getSimpleName(), ".onAdLoaded(" + message + ")");
if(adWhaleMediationRewardAd != null) {
// 보상형광고 표시
adWhaleMediationRewardAd.showAd(adWhaleMediationRewardItem -> {
Log.i(MainActivity.class.getSimpleName(), ".onUserRewarded(" + adWhaleMediationRewardItem.toString() + ")");
});
}
}
@Override
public void onAdFailedToLoad(int statusCode, String message) {
Log.i(MainActivity.class.getSimpleName(), ".onAdFailedToLoad(" + statusCode + ", " + message + ")");
}
});
}
// 라이프사이클 onDestroy 콜백 시 반드시 onDestroy 호출 필요
@Override
protected void onDestroy() {
super.onDestroy();
if(adWhaleMediationRewardAd != null) {
adWhaleMediationRewardAd.destroy();
}
}
}