【发布时间】:2019-04-11 21:13:41
【问题描述】:
如果尚未加载,我正在 Activity 的 onCreate() 方法和 onResume() 方法上以静态方式加载广告。我在 3-4 间隔后展示广告。
在 Activity
onResume()上展示插页式广告是否违反 google Admob 的政策?我浏览了 this 文章,其中说:不要在应用加载时放置插页式广告,但不确定我是否破坏了它。我是吗?
如果用户在使用应用程序时接到电话,当他挂断时,会再次呼叫
onResume()。因此,它可能会显示插页式广告。我是否触犯了法律:用户应该清楚广告与哪个应用程序相关联或在哪个应用程序上实施,提到here?
给出了我的代码的简化版本:
AdmobInterstitial.java
public class AdmobInterstitial {
private static InterstitialAd mInterstitialAd;
public static InterstitialAd getInterstitial(final Context context) {
if(mInterstitialAd==null)
{
final AdRequest adRequest= new AdRequest.Builder()
.addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
.build();
mInterstitialAd = new InterstitialAd(context.getApplicationContext());
mInterstitialAd.setAdUnitId(Utility.INTERSTITIAL);
mInterstitialAd.setAdListener(new AdListener() {
@Override
public void onAdClosed() {
mInterstitialAd.loadAd(adRequest);
}
});
mInterstitialAd.loadAd(adRequest);
}
return mInterstitialAd;
}
public static void counter(Application app, ShowAdInterface mmActivity)
{
SharedPreferences pref = app.getSharedPreferences(Utility.SHARED_PREF_NAME , MODE_PRIVATE);
SharedPreferences.Editor editor = pref.edit();
int my_counter=pref.getInt("banner_count",0);
if(my_counter>0&& my_counter%3==0) {
if(!mmActivity.showAd()) {
my_counter--;
}
}
my_counter++;
editor.putInt("banner_count",my_counter);
editor.apply();
}
}
显示广告界面
public interface ShowAdInterface {
public boolean showAd();
}
MainActivity.java
public class MainActivity extends AppCompatActivity implements ShowAdInterface{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mInterstitialAd= AdmobInterstitial.getInterstitial(this);
}
@Override
protected void onResume() {
super.onResume();
AdmobInterstitial.counter(getApplication(),this);
}
}
【问题讨论】:
标签: android admob interstitial