Android:AdMob onClickListener

Mim*_*moG 5 android click banner admob

我在Android应用程序中显示AdMob的横幅.我希望当用户点击横幅时它就消失了.我已经尝试了代码,AdView.setOnClickListener但它不起作用......

编辑:这是代码

private void visual_banner(){
//##### Pubblicità #####
        //Create the adView    
        adView = new AdView(this, AdSize.BANNER, "a14e5bed604ebf8");   
        // Lookup your LinearLayout assuming it’s been given    
        // the attribute android:id="@+id/mainLayout"    
        LinearLayout layout = (LinearLayout)findViewById(R.id.layout_ads_streaming);    
        // Add the adView to it    
        layout.addView(adView); 
        // Initiate a generic request to load it with an ad    
        adView.setOnClickListener(new OnClickListener(){

            @Override
            public void onClick(View arg0) {
                adView.destroy();
                img.setVisibility(View.VISIBLE);
            }
        });
        adView.loadAd(new AdRequest());
        //### FINE PUBBLICITA'
}
Run Code Online (Sandbox Code Playgroud)

Eri*_*lag 12

尝试使用AdMob的adListener来监听事件.

public interface AdListener {
  public void onReceiveAd(Ad ad);
  public void onFailedToReceiveAd(Ad ad, AdRequest.ErrorCode error);
  public void onPresentScreen(Ad ad);
  public void onDismissScreen(Ad ad);
  public void onLeaveApplication(Ad ad);
}
Run Code Online (Sandbox Code Playgroud)

让您的类实现侦听器,然后将侦听器添加到adView:

adView.setAdListener(this);
Run Code Online (Sandbox Code Playgroud)

实现onDismissScreen事件,该事件在您处理广告点击后应用程序恢复控制时发生.此时,您可以移除AdView,您将获得点击的功劳.

@Override
public void onDismissScreen(Ad ad) {
  if (adView != null) {
    adView.destroy();
  }
}
Run Code Online (Sandbox Code Playgroud)


Rub*_*con 4

我可以帮助您添加 AdWhirl。

我已经看过来源并做了下一步:

public class AdWhirlLayoutCustom extends AdWhirlLayout {

public AdWhirlLayoutCustom(Activity context, String keyAdWhirl) {
    super(context, keyAdWhirl);
}

public AdWhirlLayoutCustom(Context context, AttributeSet attrs) {
    super(context, attrs);
}

// We intercept clicks
@Override
public boolean onInterceptTouchEvent(MotionEvent event) {
    boolean result = super.onInterceptTouchEvent(event);
    switch (event.getAction()) {

    case MotionEvent.ACTION_DOWN:
                    // Click!
        break;
    }

    return result;
}
Run Code Online (Sandbox Code Playgroud)

}

  • 如果您拦截点击事件并隐藏广告,您将不会获得广告点击的功劳,这就违背了展示广告的初衷。 (2认同)