【问题标题】:Where to place AdMob interstitial ad in ViewPager在 ViewPager 中放置 AdMob 插页式广告的位置
【发布时间】:2016-07-16 07:03:16
【问题描述】:

我在 google play 中发布了一个包含广告的应用,几天前我收到了来自 google Admob 的以下电子邮件。

我们提醒您,您的应用目前违反了 AdMob 计划政策。重要的是,这需要您采取行动以确保广告服务不会中断。有关您需要采取的措施的更多信息,请阅读以下内容:

布局鼓励意外点击 - 插页式广告: 发布商不得以任何方式鼓励用户点击 AdMob 插页式广告。这包括任何可能鼓励意外点击的实施,例如以阻止查看应用核心内容的方式放置插页式广告或以干扰导航或与应用的核心内容和功能交互的方式放置插页式广告。

请查看您是如何实施插页式广告的,并注意以下常见的不合规实施示例:

在应用打开之前或应用关闭之后展示的插页式广告。 用户关闭另一个插页式广告后触发的插页式广告。 用户查看应用内容时,插页式广告意外加载。请记住仅在内容页面之间提供插页式广告。 每次用户点击后触发的插页式广告。 在玩游戏或大量用户互动期间出现的插页式广告。

下面是我的 MainActivity。我需要帮助才能将广告放置在适当的区域

public class MainActivity extends Activity  {
    private InterstitialAd interstitial;    
//  static int p;

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ExtendedViewPager mViewPager = (ExtendedViewPager) findViewById(R.id.view_pager);
        mViewPager.setAdapter(new TouchImageAdapter());


        mViewPager.setCurrentItem(5);
     // Prepare the Interstitial Ad

        interstitial = new InterstitialAd(MainActivity.this);
        // Insert the Ad Unit ID
        interstitial.setAdUnitId("xxxxxxxxxxxxxxxxxxxxxxxx");

            //Locate the Banner Ad in activity_main.xml
            AdView adView = (AdView) this.findViewById(R.id.adView);

            // Request for Ads
            AdRequest adRequest = new AdRequest.Builder()

            // Add a test device to show Test Ads
             .addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
             .addTestDevice("")
                    .build();

            // Load ads into Banner Ads
            adView.loadAd(adRequest);

            // Load ads into Interstitial Ads
            interstitial.loadAd(adRequest);

            // Prepare an Interstitial Ad Listener
            interstitial.setAdListener(new AdListener() {
                public void onAdLoaded() {
                    // Call displayInterstitial() function
                    displayInterstitial();
                }
            });
        }
        public void displayInterstitial() {
            // If Ads are loaded, show Interstitial else show nothing.
            if (interstitial.isLoaded()) {
                interstitial.show();
            }
        }

    class TouchImageAdapter extends PagerAdapter {

        private int[] images = { R.drawable.file_page05,R.drawable.file_page04,R.drawable.file_page03,R.drawable.file_page02,R.drawable.file_page01};

        @Override
        public int getCount() {
            return images.length;
        }

        @Override
        public View instantiateItem(ViewGroup container, int position) {
            TouchImageView img = new TouchImageView(container.getContext());
            img.setImageResource(images[position]);

            container.addView(img, LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT);
            return img;
        }

        @Override
        public void destroyItem(ViewGroup container, int position, Object object) {
            container.removeView((View) object);
        }

        @Override
        public boolean isViewFromObject(View view, Object object) {
            return view == object;
        }



    }


}

【问题讨论】:

    标签: android android-viewpager admob


    【解决方案1】:

    制作广告需要一些时间。在显示 viewpager 后显示广告。这将导致用户在浏览器中导航并突然加载广告的情况。这违反了广告政策。

    在加载 viewpager 之前,您已检查广告是否已加载。如果广告已加载,则显示广告并在关闭广告时显示浏览器。否则直接显示viewpager。

    我通常会在启动器活动中加载广告并在需要时显示。

    【讨论】:

      猜你喜欢
      • 2014-08-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-21
      • 2018-01-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多