Java 从AdMob帐户加载广告时出现问题

Java 从AdMob帐户加载广告时出现问题,java,android,Java,Android,我的贴纸应用程序与测试广告和来自active AdMob的广告完美配合。但当我最近限制AdMob时,我的应用程序开始出现活动问题,当我从应用程序打开它时,它会在半秒或更短时间后立即关闭,瞧,活动源代码 请注意,我在该活动中有两个间隙-横幅已停用 多谢各位 package com.maryapps.loveStickers; import android.content.Intent; import android.net.Uri; import android

我的贴纸应用程序与测试广告和来自active AdMob的广告完美配合。但当我最近限制AdMob时,我的应用程序开始出现活动问题,当我从应用程序打开它时,它会在半秒或更短时间后立即关闭,瞧,活动源代码
请注意,我在该活动中有两个间隙-横幅已停用
多谢各位

 package com.maryapps.loveStickers;
    
    import android.content.Intent;
    import android.net.Uri;
    import android.os.AsyncTask;
    import android.os.Bundle;
    import android.text.format.Formatter;
    import android.util.Log;
    import android.view.Menu;
    import android.view.MenuItem;
    import android.view.View;
    import android.view.ViewTreeObserver;
    import android.widget.ImageView;
    import android.widget.TextView;
    
    import androidx.annotation.NonNull;
    import androidx.recyclerview.widget.GridLayoutManager;
    import androidx.recyclerview.widget.RecyclerView;
    
    import com.facebook.drawee.view.SimpleDraweeView;
    import com.google.android.gms.ads.AdError;
    import com.google.android.gms.ads.AdRequest;
    import com.google.android.gms.ads.AdView;
    import com.google.android.gms.ads.FullScreenContentCallback;
    import com.google.android.gms.ads.LoadAdError;
    import com.google.android.gms.ads.interstitial.InterstitialAd;
    import com.google.android.gms.ads.interstitial.InterstitialAdLoadCallback;
    
    import java.lang.ref.WeakReference;
    
    public class StickerPackDetailsActivity extends AddStickerPackActivity {
    
        /**
         * Do not change below values of below 3 lines as this is also used by WhatsApp
         */
        public static final String EXTRA_STICKER_PACK_ID = "sticker_pack_id";
        public static final String EXTRA_STICKER_PACK_AUTHORITY = "sticker_pack_authority";
        public static final String EXTRA_STICKER_PACK_NAME = "sticker_pack_name";
    
        public static final String EXTRA_STICKER_PACK_WEBSITE = "sticker_pack_website";
        private InterstitialAd mInterstitialAd;
        public static final String EXTRA_STICKER_PACK_EMAIL = "sticker_pack_email";
        public static final String EXTRA_STICKER_PACK_PRIVACY_POLICY = "sticker_pack_privacy_policy";
        public static final String EXTRA_STICKER_PACK_LICENSE_AGREEMENT = "sticker_pack_license_agreement";
        public static final String EXTRA_STICKER_PACK_TRAY_ICON = "sticker_pack_tray_icon";
        public static final String EXTRA_SHOW_UP_BUTTON = "show_up_button";
        public static final String EXTRA_STICKER_PACK_DATA = "sticker_pack";
    
    
        private RecyclerView recyclerView;
        private GridLayoutManager layoutManager;
        private StickerPreviewAdapter stickerPreviewAdapter;
        private int numColumns;
        private AdView mAdView;
        private View addButton;
        private View alreadyAddedText;
        private StickerPack stickerPack;
        private View divider;
        private WhiteListCheckAsyncTask whiteListCheckAsyncTask;
    
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_sticker_pack_details);
            boolean showUpButton = getIntent().getBooleanExtra(EXTRA_SHOW_UP_BUTTON, false);
            stickerPack = getIntent().getParcelableExtra(EXTRA_STICKER_PACK_DATA);
            TextView packNameTextView = findViewById(R.id.pack_name);
            TextView packPublisherTextView = findViewById(R.id.author);
            ImageView packTrayIcon = findViewById(R.id.tray_image);
            TextView packSizeTextView = findViewById(R.id.pack_size);
            SimpleDraweeView expandedStickerView = findViewById(R.id.sticker_details_expanded_sticker);
    
    
    
            //Banner in sticker pack details
            /*
            mAdView = findViewById(R.id.adView);
            AdRequest adRequest = new AdRequest.Builder().build();
            mAdView.loadAd(adRequest);
            */
    
    
            admobinter2();
            addButton = findViewById(R.id.add_to_whatsapp_button);
            alreadyAddedText = findViewById(R.id.already_added_text);
            layoutManager = new GridLayoutManager(this, 1);
            recyclerView = findViewById(R.id.sticker_list);
            recyclerView.setLayoutManager(layoutManager);
            recyclerView.getViewTreeObserver().addOnGlobalLayoutListener(pageLayoutListener);
            recyclerView.addOnScrollListener(dividerScrollListener);
            divider = findViewById(R.id.divider);
            if (stickerPreviewAdapter == null) {
                stickerPreviewAdapter = new StickerPreviewAdapter(getLayoutInflater(), R.drawable.sticker_error, getResources().getDimensionPixelSize(R.dimen.sticker_pack_details_image_size), getResources().getDimensionPixelSize(R.dimen.sticker_pack_details_image_padding), stickerPack, expandedStickerView);
                recyclerView.setAdapter(stickerPreviewAdapter);
            }
            packNameTextView.setText(stickerPack.name);
            packPublisherTextView.setText(stickerPack.publisher);
            packTrayIcon.setImageURI(StickerPackLoader.getStickerAssetUri(stickerPack.identifier, stickerPack.trayImageFile));
            packSizeTextView.setText(Formatter.formatShortFileSize(this, stickerPack.getTotalSize()));
            addButton.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    request();
                    addStickerPackToWhatsApp(stickerPack.identifier, stickerPack.name);
                }
            });
            if (getSupportActionBar() != null) {
                getSupportActionBar().setDisplayHomeAsUpEnabled(showUpButton);
                getSupportActionBar().setTitle(showUpButton ? getResources().getString(R.string.title_activity_sticker_pack_details_multiple_pack) : getResources().getQuantityString(R.plurals.title_activity_sticker_packs_list, 1));
            }
            findViewById(R.id.sticker_pack_animation_indicator).setVisibility(stickerPack.animatedStickerPack ? View.VISIBLE : View.GONE);
        }
    
        private void launchInfoActivity(String publisherWebsite, String publisherEmail, String privacyPolicyWebsite, String licenseAgreementWebsite, String trayIconUriString) {
            Intent intent = new Intent(StickerPackDetailsActivity.this, StickerPackInfoActivity.class);
            intent.putExtra(StickerPackDetailsActivity.EXTRA_STICKER_PACK_ID, stickerPack.identifier);
            intent.putExtra(StickerPackDetailsActivity.EXTRA_STICKER_PACK_WEBSITE, publisherWebsite);
            intent.putExtra(StickerPackDetailsActivity.EXTRA_STICKER_PACK_EMAIL, publisherEmail);
            intent.putExtra(StickerPackDetailsActivity.EXTRA_STICKER_PACK_PRIVACY_POLICY, privacyPolicyWebsite);
            intent.putExtra(StickerPackDetailsActivity.EXTRA_STICKER_PACK_LICENSE_AGREEMENT, licenseAgreementWebsite);
            intent.putExtra(StickerPackDetailsActivity.EXTRA_STICKER_PACK_TRAY_ICON, trayIconUriString);
            startActivity(intent);
        }
    
        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            getMenuInflater().inflate(R.menu.toolbar, menu);
            return super.onCreateOptionsMenu(menu);
        }
    
        @Override
        public boolean onOptionsItemSelected(MenuItem item) {
            if (item.getItemId() == R.id.action_info && stickerPack != null) {
                Uri trayIconUri = StickerPackLoader.getStickerAssetUri(stickerPack.identifier, stickerPack.trayImageFile);
                launchInfoActivity(stickerPack.publisherWebsite, stickerPack.publisherEmail, stickerPack.privacyPolicyWebsite, stickerPack.licenseAgreementWebsite, trayIconUri.toString());
                return true;
            }
            return super.onOptionsItemSelected(item);
        }
    
    
        private final ViewTreeObserver.OnGlobalLayoutListener pageLayoutListener = new ViewTreeObserver.OnGlobalLayoutListener() {
            @Override
            public void onGlobalLayout() {
                setNumColumns(recyclerView.getWidth() / recyclerView.getContext().getResources().getDimensionPixelSize(R.dimen.sticker_pack_details_image_size));
            }
        };
    
        private void setNumColumns(int numColumns) {
            if (this.numColumns != numColumns) {
                layoutManager.setSpanCount(numColumns);
                this.numColumns = numColumns;
                if (stickerPreviewAdapter != null) {
                    stickerPreviewAdapter.notifyDataSetChanged();
                }
            }
        }
    
        private final RecyclerView.OnScrollListener dividerScrollListener = new RecyclerView.OnScrollListener() {
            @Override
            public void onScrollStateChanged(@NonNull final RecyclerView recyclerView, final int newState) {
                super.onScrollStateChanged(recyclerView, newState);
                updateDivider(recyclerView);
            }
    
            @Override
            public void onScrolled(@NonNull final RecyclerView recyclerView, final int dx, final int dy) {
                super.onScrolled(recyclerView, dx, dy);
                updateDivider(recyclerView);
            }
    
            private void updateDivider(RecyclerView recyclerView) {
                boolean showDivider = recyclerView.computeVerticalScrollOffset() > 0;
                if (divider != null) {
                    divider.setVisibility(showDivider ? View.VISIBLE : View.INVISIBLE);
                }
            }
        };
        public void request(){
            AdRequest adRequest = new AdRequest.Builder().build();
            InterstitialAd.load(this,getString(R.string.admobinter), adRequest, new InterstitialAdLoadCallback() {
                @Override
                public void onAdLoaded(@NonNull InterstitialAd interstitialAd) {
                    // The mInterstitialAd reference will be null until
                    // an ad is loaded.
                    mInterstitialAd = interstitialAd;
                    if (mInterstitialAd != null) {
                        mInterstitialAd.show(StickerPackDetailsActivity.this);
                    }
                    mInterstitialAd.setFullScreenContentCallback(new FullScreenContentCallback(){
                        @Override
                        public void onAdDismissedFullScreenContent() {
                            // Called when fullscreen content is dismissed.
    
                        }
    
                        @Override
                        public void onAdFailedToShowFullScreenContent(AdError adError) {
                            // Called when fullscreen content failed to show.
                            Log.d("TAG", "The ad failed to show.");
    
                        }
    
                        @Override
                        public void onAdShowedFullScreenContent() {
                            // Called when fullscreen content is shown.
                            // Make sure to set your reference to null so you don't
                            // show it a second time.
                            mInterstitialAd = null;
                            Log.d("TAG", "The ad was shown.");
                        }
                    });
    
                }
    
                @Override
                public void onAdFailedToLoad(@NonNull LoadAdError loadAdError) {
                    // Handle the error
    
                    mInterstitialAd = null;
                }
            });
        }
    
        @Override
        protected void onResume() {
            super.onResume();
            whiteListCheckAsyncTask = new WhiteListCheckAsyncTask(this);
            whiteListCheckAsyncTask.execute(stickerPack);
        }
        private InterstitialAd m2InterstitialAd;
        public void admobinter2(){
            AdRequest adRequest = new AdRequest.Builder().build();
            InterstitialAd.load(this,getString(R.string.admobinter2), adRequest, new InterstitialAdLoadCallback() {
                @Override
                public void onAdLoaded(@NonNull InterstitialAd interstitialAd) {
                    // The m2InterstitialAd reference will be null until
                    // an ad is loaded.
                    m2InterstitialAd = interstitialAd;
    
                    m2InterstitialAd.setFullScreenContentCallback(new FullScreenContentCallback(){
                        @Override
                        public void onAdDismissedFullScreenContent() {
                            // Called when fullscreen content is dismissed.
                        finish();
                        }
    
                        @Override
                        public void onAdFailedToShowFullScreenContent(AdError adError) {
                            // Called when fullscreen content failed to show.
                            Log.d("TAG", "The ad failed to show.");
                            finish();
                        }
    
                        @Override
                        public void onAdShowedFullScreenContent() {
                            // Called when fullscreen content is shown.
                            // Make sure to set your reference to null so you don't
                            // show it a second time.
                            m2InterstitialAd = null;
                            Log.d("TAG", "The ad was shown.");
                        }
                    });
    
                }
    
                @Override
                public void onAdFailedToLoad(@NonNull LoadAdError loadAdError) {
                    // Handle the error
                    finish();
                    m2InterstitialAd = null;
                }
            });
        }
    
        @Override
        protected void onPause() {
            super.onPause();
            if (whiteListCheckAsyncTask != null && !whiteListCheckAsyncTask.isCancelled()) {
                whiteListCheckAsyncTask.cancel(true);
            }
        }
    
        @Override
        public void onBackPressed() {
            if (m2InterstitialAd != null) {
                m2InterstitialAd.show(StickerPackDetailsActivity.this);
            }
        }
    
        private void updateAddUI(Boolean isWhitelisted) {
            if (isWhitelisted) {
                addButton.setVisibility(View.GONE);
                alreadyAddedText.setVisibility(View.VISIBLE);
                findViewById(R.id.sticker_pack_details_tap_to_preview).setVisibility(View.GONE);
            } else {
                addButton.setVisibility(View.VISIBLE);
                alreadyAddedText.setVisibility(View.GONE);
                findViewById(R.id.sticker_pack_details_tap_to_preview).setVisibility(View.VISIBLE);
            }
        }
    
        static class WhiteListCheckAsyncTask extends AsyncTask<StickerPack, Void, Boolean> {
            private final WeakReference<StickerPackDetailsActivity> stickerPackDetailsActivityWeakReference;
    
            WhiteListCheckAsyncTask(StickerPackDetailsActivity stickerPackListActivity) {
                this.stickerPackDetailsActivityWeakReference = new WeakReference<>(stickerPackListActivity);
            }
    
            @Override
            protected final Boolean doInBackground(StickerPack... stickerPacks) {
                StickerPack stickerPack = stickerPacks[0];
                final StickerPackDetailsActivity stickerPackDetailsActivity = stickerPackDetailsActivityWeakReference.get();
                if (stickerPackDetailsActivity == null) {
                    return false;
                }
                return WhitelistCheck.isWhitelisted(stickerPackDetailsActivity, stickerPack.identifier);
            }
    
            @Override
            protected void onPostExecute(Boolean isWhitelisted) {
                final StickerPackDetailsActivity stickerPackDetailsActivity = stickerPackDetailsActivityWeakReference.get();
                if (stickerPackDetailsActivity != null) {
                    stickerPackDetailsActivity.updateAddUI(isWhitelisted);
                }
            }
        }
    
    }
package com.maryapps.loveStickers;
导入android.content.Intent;
导入android.net.Uri;
导入android.os.AsyncTask;
导入android.os.Bundle;
导入android.text.format.Formatter;
导入android.util.Log;
导入android.view.Menu;
导入android.view.MenuItem;
导入android.view.view;
导入android.view.ViewTreeObserver;
导入android.widget.ImageView;
导入android.widget.TextView;
导入androidx.annotation.NonNull;
导入androidx.recyclerview.widget.GridLayoutManager;
导入androidx.recyclerview.widget.recyclerview;
导入com.facebook.drawee.view.simpledraweview;
导入com.google.android.gms.ads.AdError;
导入com.google.android.gms.ads.AdRequest;
导入com.google.android.gms.ads.AdView;
导入com.google.android.gms.ads.FullScreenContentCallback;
导入com.google.android.gms.ads.loaderror;
导入com.google.android.gms.ads.interstitual.interstituralad;
导入com.google.android.gms.ads.interstitual.interstitularaldloadcallback;
导入java.lang.ref.WeakReference;
公共类StickPackDetailsActivity扩展了AddStickPackaActivity{
/**
*请勿更改低于3行的值,因为WhatsApp也会使用该值
*/
公共静态最终字符串额外\u贴纸\u包装\u ID=“贴纸\u包装\u ID”;
公共静态最终字符串额外贴纸包装授权=“贴纸包装授权”;
公共静态最终字符串额外贴纸包装名称=“贴纸包装名称”;
公共静态最终字符串额外贴纸包装网站=“贴纸包装网站”;
私人间质;
公共静态最终字符串额外贴纸包装电子邮件=“贴纸包装电子邮件”;
公共静态最终字符串额外\u贴纸\u包装\u隐私\u策略=“贴纸\u包装\u隐私\u策略”;
公共静态最终字符串额外\u标签\u包装\u许可协议=“标签\u包装\u许可协议”;
公共静态最终字符串附加标签包装托盘图标=“标签包装托盘图标”;
公共静态最终字符串额外显示按钮=“显示按钮”;
公共静态最终字符串额外贴纸包装数据=“贴纸包装”;
私人回收站;
私有网格布局管理器布局管理器;
私人贴纸预览贴纸预览贴纸;
私人国际专栏;
私人顾问马德维尤;
私有视图添加按钮;
私有视图已添加文本;
私人贴纸包;
私视分割器;
私有WhiteListCheckAsyncTask WhiteListCheckAsyncTask;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u标签\u包装\u详细信息);
boolean showUpButton=getIntent().getBooleanExtra(EXTRA_SHOW_UP_按钮,false);
贴纸包装=getIntent().getParcelableExtra(额外贴纸包装数据);
TextView packNameTextView=findviewbyd(R.id.pack_name);
TextView packPublisherTextView=findViewById(R.id.author);
ImageView packTrayIcon=findViewById(R.id.tray_图像);
TextView packSizeTextView=findViewById(R.id.pack_size);
SimpleDraweView ExpandedStackerView=findViewById(R.id.Stacker\u details\u expanded\u Stacker);
//贴纸包装中的横幅详细信息
/*
mAdView=findviewbyd(R.id.adView);
AdRequest AdRequest=新建AdRequest.Builder().build();
mAdView.loadAd(adRequest);
*/
admobinter2();
addButton=findViewById(R.id.add\u to\u whatsapp\u按钮);
alreadyAddedText=findviewbyd(R.id.readed\u added\u text);
layoutManager=新的GridLayoutManager(这个,1);
recyclerView=findViewById(R.id.标签列表);
recyclerView.setLayoutManager(layoutManager);
RecycleView.getViewTreeObserver().addOnGlobalLayoutListener(pageLayoutListener);
recyclerView.addOnScrollListener(dividerScrollListener);
分隔器=findViewById(R.id.分隔器);
如果(粘贴预览wadapter==null){
sticker PreviewAdapter=新的sticker PreviewAdapter(getLayoutInflater(),R.drawable.sticker\u错误,getResources()。getDimensionPixelSize(R.dimen.sticker\u pack\u details\u image\u size),getResources()。getDimensionPixelSize(R.dimen.sticker\u pack\u details\u image\u padding),sticker pack,ExpandedSticker视图);
recyclerView.setAdapter(粘贴预览适配器);
}
packNameTextView.setText(stickerPack.name);
packPublisherTextView.setText(stickerPack.publisher);
packTrayIcon.setImageURI(stickerpackload.getStickerAssetUri(stickerPack.identifier,stickerPack.trayImageFile));
packSizeTextView.setText(Formatter.formatShortFileSize(这是StickPack.getTotalSize());
addButton.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
请求();
addStickerPackToWhatsApp(stickerPack.identifier,stickerPack.name);
}
});
如果(getSupportActionBar()!=null){
getSupportActionBar().setDisplayHomeAsUpEnabled(显示按钮);
getSupportActionBar().setTitle(显示按钮?getResources().getSt