¿Cómo evitar los anuncios intersticiales para recargar después de cerrarlo

midou:

Cuando trato de buscar una carta | haciendo clic en el botón de cierre en el anuncio intersticial, ese anuncio particular está cerrada. Pero entonces se carga otro anuncio. Y la aplicación continúa de esta manera para siempre.

¿Cómo evitar otro anuncio para cargar después de cerrar manualmente?

Este es mi código:

static View setupListView(final Activity activity, View convertView, final ViewGroup parent,
                              MediaBrowserCompat.MediaItem item) {

        if (sColorStateNotPlaying == null || sColorStatePlaying == null)
            initializeColorStateLists(activity);


        MediaDescriptionCompat description = item.getDescription();
        final MediaItemViewHolder holder;
        Integer cachedState = STATE_INVALID;

        holder = new MediaItemViewHolder();



        if (MediaIDHelper.ADVERTISEMENT.equals(description.getMediaId())) {
            // Advert show
            convertView = LayoutInflater.
                from(activity).
                inflate(R.layout.fragment_list_ad, parent, false);




            try {
                MobileAds.initialize(activity, activity.getString(R.string.admob_app_id));
                holder.mAdView = convertView.findViewById(R.id.itemAd);
                adRequest = new AdRequest.Builder().build();
                holder.mAdView.loadAd(adRequest);
            } catch (Exception ex) {
                Log.e(TAG, ex.getMessage());
            }
            return convertView;
        }
        else if (MediaIDHelper.isItemHeader(description.getMediaId())) {
            convertView = LayoutInflater.
                from(activity).
                inflate(R.layout.fragment_list_header, parent, false);
        }
        else if (MediaIDHelper.isEBookHeader(description.getMediaId())) {


            convertView = LayoutInflater.
                from(activity).
                inflate(R.layout.fragment_ebook_header, parent, false);

            MobileAds.initialize(activity, activity.getString(R.string.admob_app_id));
            AdRequest adIRequest = new AdRequest.Builder().build();

            holder.interstitial = new InterstitialAd(activity);
            holder.interstitial.setAdUnitId(activity.getString(R.string.admob_interstitial_id));

            // Interstitial Ad load Request
            holder.interstitial.loadAd(adIRequest);

            // Prepare an Interstitial Ad Listener
            holder.interstitial.setAdListener(new AdListener() {
                public void onAdLoaded() {
                    // Call displayInterstitial() function when the Ad loads
                    holder.displayInterstitial();
                }
            });
        }
        else if (
            MediaIDHelper.isBrowseable(description.getMediaId())
            && (
                MediaIDHelper.isEBook(description.getMediaId())) ||
                MediaIDHelper.MEDIA_ID_BY_QUEUE.equals(description.getMediaId())
            ) {
            convertView = LayoutInflater.
                from(activity).
                inflate(R.layout.fragment_ebook_item, parent, false);
        }
        else {
            // Everything else
            convertView = LayoutInflater.
                from(activity).
                inflate(R.layout.fragment_list_item, parent, false);
        }
        convertView.setTag(holder);

        holder.mImageView = (ImageView) convertView.findViewById(R.id.play_eq);
        holder.mTitleView = (TextView) convertView.findViewById(R.id.title);
        holder.mDescriptionView = (TextView) convertView.findViewById(R.id.description);

        if (holder.mTitleView != null) {
            holder.mTitleView.setText(description.getTitle());
        }

        if (holder.mDescriptionView != null) {
            holder.mDescriptionView.setText(description.getSubtitle());
        }


        if (holder.mImageView != null) {
            int state = getMediaItemState(activity, item);
            if (cachedState == null || cachedState != state) {
                if (MediaIDHelper.isBrowseable(description.getMediaId())
                    || MediaIDHelper.isEBookHeader(description.getMediaId()) ) {

                    Uri imageUri = item.getDescription().getIconUri();
                    GlideApp.
                        with(activity).
                        load(imageUri).
                        override(Target.SIZE_ORIGINAL).
                        fallback(R.drawable.default_book_cover).
                        error(R.drawable.default_book_cover).
                        /*listener(new RequestListener<Drawable>() {
                            @Override
                            public boolean onLoadFailed(@Nullable GlideException e, Object model, Target<Drawable> target, boolean isFirstResource) {
                                return false;
                            }

                            @Override
                            public boolean onResourceReady(Drawable resource, Object model, Target<Drawable> target, DataSource dataSource, boolean isFirstResource) {
                                return false;
                            }
                        }).*/
                        into(holder.mImageView);

y displayInterstitial () método es

    public void displayInterstitial()
    {
        // If Interstitial Ads are loaded then show else show nothing.
        if (interstitial.isLoaded()) {
            interstitial.show();
        }
    }
waseel almahri:

Que puso el anuncio en el lugar equivocado, lo puso en un fragmento o actividad funcionará sin problemas

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=226566&siteId=1
Recomendado
Clasificación