我需要帮助 如何在app开始时显示admob interstitial 我希望在应用启动时触发admon插页式广告 为了记录我的应用程序是一个滑动选项卡内容 请求我需要任何解决方案 任何人都有想法
public class MainActivity extends FragmentActivity implements
ActionBar.TabListener {
private InterstitialAd interstitial;
private ViewPager viewPager;
private TabsPagerAdapter mAdapter;
private ActionBar actionBar;
// Tab titles
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Create the interstitial.
interstitial = new InterstitialAd(this);
interstitial.setAdUnitId("");
//google ads Banner
AdView mAdView = (AdView) findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest);
ActionBar actionBar = getActionBar();
// Create the interstitial.
interstitial = new InterstitialAd(this);
interstitial.setAdUnitId("ca-app-pub-1417847946178022/7723890794");
// Create ad request.
adRequest = new AdRequest.Builder().build();
// Begin loading your interstitial.
interstitial.loadAd(adRequest);
// Initilization
viewPager = (ViewPager) findViewById(R.id.pager);
actionBar = getActionBar();
mAdapter = new TabsPagerAdapter(getSupportFragmentManager());
viewPager.setAdapter(mAdapter);
actionBar.setHomeButtonEnabled(false);
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
// Adding Tabs
for (String tab_name : tabs) {
actionBar.addTab(actionBar.newTab().setText(tab_name)
.setTabListener(this));
}
/**
* on swiping the viewpager make respective tab selected
* */
final ActionBar finalActionBar = actionBar;
viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageSelected(int position) {
// on changing the page
// make respected tab selected
finalActionBar.setSelectedNavigationItem(position);
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
}
@Override
public void onPageScrollStateChanged(int arg0) {
}
});
interstitial.setAdListener(new AdListener() {
public void onAdLoaded() {
displayInterstitial();
}
});
}
// Invoke displayInterstitial() when you are ready to display an interstitial.
public void displayInterstitial() {
if (interstitial.isLoaded()) {
interstitial.show();
}
}
@Override
public void onTabReselected(Tab tab, FragmentTransaction ft) {
}
@Override
public void onTabSelected(Tab tab, FragmentTransaction ft) {
// on tab selected
// show respected fragment view
viewPager.setCurrentItem(tab.getPosition());
}
@Override
public void onTabUnselected(Tab tab, FragmentTransaction ft) {
}
}
答案 0 :(得分:1)
请注意,根据disallowed admob implementations:
App加载或退出
不要在应用加载时放置插页式广告,并且在退出应用时,插页式广告只应放置在应用内容的页面之间。
如果不遵守此政策,可能会导致您的应用无法投放广告。
如果您仍然需要此功能,则可以使用onResume's
方法显示:
boolean isAdShown;
@Override
protected void onResume() {
super.onResume();
if (!isAdShown) {
displayInterstitial();
isAdShown = true;
}
}
答案 1 :(得分:-1)
您不应在应用加载时以及在退出应用时将插页式广告放置为“但是”。您可以在应用加载后显示非页内广告,通过这种做法,您必须在应用中实现启动屏幕,然后在其后显示非页内广告。
当用户闲置在“首页”上时,非页内广告将启动 应用的屏幕”。此实施违反了我们的 政策。解决此违规问题的一种可能方法是 实施作为应用程序的第一个屏幕启动的启动页面, 在“主屏幕”之前然后,非页内广告应在 初始屏幕和“主屏幕”之间的过渡。
参考:-> Google Blog