Java源码示例:com.applovin.sdk.AppLovinAd

示例1
@Override
public void adReceived(final AppLovinAd ad)
{
    log( DEBUG, "Interstitial did load ad: " + ad.getAdIdNumber() );

    enqueueAd( ad, zoneId );

    runOnUiThread( new Runnable()
    {
        @Override
        public void run()
        {
            listener.onAdLoaded();
        }
    } );
}
 
示例2
@Override
public void adReceived(final AppLovinAd ad)
{
    log( DEBUG, "Rewarded video did load ad: " + ad.getAdIdNumber() );

    parentActivity.runOnUiThread( new Runnable()
    {
        @Override
        public void run()
        {
            try
            {
                MoPubRewardedVideoManager.onRewardedVideoLoadSuccess( AppLovinCustomEventRewardedVideo.this.getClass(), "" );
            }
            catch ( Throwable th )
            {
                log( ERROR, "Unable to notify listener of successful ad load.", th );
            }
        }
    } );
}
 
示例3
@Override
public void showInterstitial()
{
    final AppLovinAd preloadedAd = dequeueAd( zoneId );
    if ( preloadedAd != null )
    {
        final AppLovinInterstitialAdDialog interstitialAd = AppLovinInterstitialAd.create( sdk, context );
        interstitialAd.setAdDisplayListener( this );
        interstitialAd.setAdClickListener( this );
        interstitialAd.setAdVideoPlaybackListener( this );
        interstitialAd.showAndRender( preloadedAd );
    }
    else
    {
        log( ERROR, "Failed to show an AppLovin interstitial before one was loaded" );
        listener.onInterstitialFailed( MoPubErrorCode.NETWORK_INVALID_STATE );
    }
}
 
示例4
@Override
public void adReceived(final AppLovinAd ad)
{
    log( DEBUG, "Interstitial did load ad: " + ad.getAdIdNumber() );

    enqueueAd( ad, zoneId );

    runOnUiThread( new Runnable()
    {
        @Override
        public void run()
        {
            try
            {
                listener.onInterstitialLoaded();
            }
            catch ( Throwable th )
            {
                log( ERROR, "Unable to notify listener of successful ad load.", th );
            }
        }
    } );
}
 
示例5
@Override
public void showInterstitial()
{
    final AppLovinAd preloadedAd = dequeueAd( zoneId );
    if ( preloadedAd != null )
    {
        final AppLovinSdk sdk = AppLovinSdk.getInstance( context );

        final AppLovinInterstitialAdDialog interstitialAd = AppLovinInterstitialAd.create( sdk, context );
        interstitialAd.setAdDisplayListener( this );
        interstitialAd.setAdClickListener( this );
        interstitialAd.setAdVideoPlaybackListener( this );
        interstitialAd.showAndRender( preloadedAd );
    }
    else
    {
        log( ERROR, "Failed to show an AppLovin interstitial before one was loaded" );
        listener.onAdFailedToLoad( AdRequest.ERROR_CODE_INTERNAL_ERROR );
    }
}
 
示例6
@Override
public void adHidden(AppLovinAd ad) {
  ApplovinAdapter.log(DEBUG, "Rewarded video dismissed.");
  AppLovinMediationAdapter.INCENTIVIZED_ADS.remove(mZoneId);
  if (mFullyWatched) {
    mRewardedAdCallback.onUserEarnedReward(mRewardItem);
  }

  mRewardedAdCallback.onAdClosed();
}
 
示例7
@Override
public void videoPlaybackEnded(AppLovinAd ad, double percentViewed, boolean fullyWatched) {
  ApplovinAdapter.log(
      DEBUG, "Rewarded video playback ended at playback percent: " + percentViewed + "%.");
  mFullyWatched = fullyWatched;
  if (fullyWatched) {
    mRewardedAdCallback.onVideoComplete();
  }
}
 
示例8
@Override
public void userRewardVerified(AppLovinAd ad, Map<String, String> response) {
  final String currency = response.get("currency");
  final String amountStr = response.get("amount");

  // AppLovin returns amount as double.
  final int amount = (int) Double.parseDouble(amountStr);

  ApplovinAdapter.log(DEBUG, "Rewarded " + amount + " " + currency);
  mRewardItem = new AppLovinRewardItem(amount, currency);
}
 
示例9
@Override
public void adClicked(AppLovinAd ad) {
  ApplovinAdapter.log(DEBUG, "Interstitial clicked.");

  mMediationInterstitialListener.onAdClicked(mAdapter);
  mMediationInterstitialListener.onAdLeftApplication(mAdapter);
}
 
示例10
@Override
public void showInterstitial() {
  synchronized (INTERSTITIAL_AD_QUEUES_LOCK) {
    // Update mute state.
    mSdk.getSettings().setMuted(AppLovinUtils.shouldMuteAudio(mNetworkExtras));

    final Queue<AppLovinAd> queue = INTERSTITIAL_AD_QUEUES.get(mZoneId);
    final AppLovinAd dequeuedAd = (queue != null) ? queue.poll() : null;

    final AppLovinInterstitialAdDialog interstitialAd =
        AppLovinInterstitialAd.create(mSdk, mContext);

    final AppLovinInterstitialAdListener listener =
        new AppLovinInterstitialAdListener(this, mMediationInterstitialListener);
    interstitialAd.setAdDisplayListener(listener);
    interstitialAd.setAdClickListener(listener);
    interstitialAd.setAdVideoPlaybackListener(listener);

    if (dequeuedAd != null) {
      log(DEBUG, "Showing interstitial for zone: " + mZoneId);
      interstitialAd.showAndRender(dequeuedAd);
    } else {
      log(DEBUG, "Attempting to show interstitial before one was loaded.");

      // Check if we have a default zone interstitial available.
      if (TextUtils.isEmpty(mZoneId) && interstitialAd.isAdReadyToDisplay()) {
        log(DEBUG, "Showing interstitial preloaded by SDK.");
        interstitialAd.show();
      }
      // TODO: Show ad for zone identifier if exists
      else {
        mMediationInterstitialListener.onAdOpened(this);
        mMediationInterstitialListener.onAdClosed(this);
      }
    }
  }
}
 
示例11
@Override
public void adReceived(final AppLovinAd ad) {
  ApplovinAdapter.log(
      DEBUG, "Banner did load ad: " + ad.getAdIdNumber() + " for zone: " + mZoneId);

  mAdView.renderAd(ad);

  AppLovinSdkUtils.runOnUiThread(
      new Runnable() {
        @Override
        public void run() {
          mMediationBannerListener.onAdLoaded(mAdapter);
        }
      });
}
 
示例12
@Override
public void adReceived(AppLovinAd ad) {
  Log.d(TAG, "Interstitial did load ad: " + ad.getAdIdNumber());

  this.ad = ad;
  mInterstitalAdCallback = callback.onSuccess(AppLovinRtbInterstitialRenderer.this);
}
 
示例13
@Override
public void adReceived(AppLovinAd ad) {
  Log.d(TAG, "Banner did load ad: " + ad.getAdIdNumber());

  mBannerAdCallback = callback.onSuccess(AppLovinRtbBannerRenderer.this);
  adView.renderAd(ad);
}
 
示例14
@Override
public void adReceived(final AppLovinAd appLovinAd) {
  ad = appLovinAd;
  Log.d("INFO", "Rewarded video did load ad: " + ad.getAdIdNumber());
  AppLovinSdkUtils.runOnUiThread(
      new Runnable() {
        @Override
        public void run() {
          mRewardedAdCallback = mMediationAdLoadCallback.onSuccess(AppLovinMediationAdapter.this);
        }
      });
}
 
示例15
@Override
public void adHidden(final AppLovinAd ad)
{
    log( DEBUG, "Rewarded video dismissed" );

    if ( fullyWatched && reward != null )
    {
        log( DEBUG, "Rewarded" + reward.getAmount() + " " + reward.getLabel() );
        MoPubRewardedVideoManager.onRewardedVideoCompleted( getClass(), "", reward );
    }

    MoPubRewardedVideoManager.onRewardedVideoClosed( getClass(), "" );
}
 
示例16
@Override
public void videoPlaybackEnded(final AppLovinAd ad, final double percentViewed, final boolean fullyWatched)
{
    log( DEBUG, "Rewarded video playback ended at playback percent: " + percentViewed );

    this.fullyWatched = fullyWatched;
}
 
示例17
@Override
public void userRewardVerified(final AppLovinAd appLovinAd, final Map map)
{
    final String currency = (String) map.get( "currency" );
    final int amount = (int) Double.parseDouble( (String) map.get( "amount" ) ); // AppLovin returns amount as double

    log( DEBUG, "Verified " + amount + " " + currency );

    reward = MoPubReward.success( currency, amount );
}
 
示例18
private static AppLovinAd dequeueAd(final String zoneId)
{
    synchronized ( GLOBAL_INTERSTITIAL_ADS_LOCK )
    {
        AppLovinAd preloadedAd = null;

        final Queue<AppLovinAd> preloadedAds = GLOBAL_INTERSTITIAL_ADS.get( zoneId );
        if ( preloadedAds != null && !preloadedAds.isEmpty() )
        {
            preloadedAd = preloadedAds.poll();
        }

        return preloadedAd;
    }
}
 
示例19
@Override
public void adReceived(final AppLovinAd ad)
{
    log( DEBUG, "Rewarded video did load ad: " + ad.getAdIdNumber() );

    runOnUiThread( new Runnable()
    {
        @Override
        public void run()
        {
            listener.onAdLoaded( ApplovinAdapter.this );
        }
    } );
}
 
示例20
@Override
public void adHidden(final AppLovinAd ad)
{
    log( DEBUG, "Rewarded video dismissed" );

    if ( fullyWatched && reward != null )
    {
        log( DEBUG, "Rewarded " + reward.getAmount() + " " + reward.getType() );
        listener.onRewarded( this, reward );
    }

    listener.onAdClosed( this );
}
 
示例21
@Override
public void adClicked(final AppLovinAd ad)
{
    log( DEBUG, "Rewarded video clicked" );

    listener.onAdClicked( this );
    listener.onAdLeftApplication( this );
}
 
示例22
@Override
public void userRewardVerified(final AppLovinAd ad, final Map map)
{
    final String currency = (String) map.get( "currency" );
    final String amountStr = (String) map.get( "amount" );
    final int amount = (int) Double.parseDouble( amountStr ); // AppLovin returns amount as double

    log( DEBUG, "Verified " + amount + " " + currency );

    reward = new AppLovinRewardItem( amount, currency );
}
 
示例23
private static AppLovinAd dequeueAd(final String zoneId)
{
    synchronized ( GLOBAL_INTERSTITIAL_ADS_LOCK )
    {
        AppLovinAd preloadedAd = null;

        final Queue<AppLovinAd> preloadedAds = GLOBAL_INTERSTITIAL_ADS.get( zoneId );
        if ( preloadedAds != null && !preloadedAds.isEmpty() )
        {
            preloadedAd = preloadedAds.poll();
        }

        return preloadedAd;
    }
}
 
示例24
@Override
public void adReceived(AppLovinAd appLovinAd)
{
    log( "Interstitial loaded" );
    showButton.setEnabled( true );
}
 
示例25
@Override
public void adDisplayed(AppLovinAd appLovinAd)
{
    log( "Interstitial Displayed" );
}
 
示例26
@Override
public void adHidden(AppLovinAd appLovinAd)
{
    log( "Interstitial Hidden" );
}
 
示例27
@Override
public void adClicked(AppLovinAd appLovinAd)
{
    log( "Interstitial Clicked" );
}
 
示例28
@Override
public void videoPlaybackBegan(AppLovinAd appLovinAd)
{
    log( "Video Started" );
}
 
示例29
@Override
public void videoPlaybackEnded(AppLovinAd appLovinAd, double percentViewed, boolean wasFullyViewed)
{
    log( "Video Ended" );
}
 
示例30
@Override
public void adDisplayed(AppLovinAd ad) {
  ApplovinAdapter.log(DEBUG, "Rewarded video displayed.");
  mRewardedAdCallback.onAdOpened();
  mRewardedAdCallback.reportAdImpression();
}