Java 类com.google.android.gms.ads.doubleclick.PublisherAdView 实例源码

项目:text_converter    文件:AdsManager.java   
/**
 * Create {@link PublisherAdView} and add to container
 *
 * @param context   - android context
 * @param container - parent view for add ad view
 * @return true if ads has been added
 */
public static boolean addBannerAds(Context context, @Nullable ViewGroup container) {
    if (isPremiumUser(context)) {
        if (container != null) {
            container.setVisibility(View.GONE);
        }
        return false;
    } else {
        if (container == null) return false;
        container.setVisibility(View.VISIBLE);
        PublisherAdView publisherAdView = new PublisherAdView(context);
        publisherAdView.setAdSizes(AdSize.SMART_BANNER, AdSize.FLUID);
        publisherAdView.setAdUnitId(AdConstants.AdUnitId.AD_UNIT_ID_NATIVE_MAIN_320_50);

        PublisherAdRequest.Builder builder = new PublisherAdRequest.Builder();
        if (BuildConfig.DEBUG) builder.addTestDevice(TEST_DEVICE_ID);

        publisherAdView.loadAd(builder.build());
        container.removeAllViews();
        container.addView(publisherAdView);
    }
    return false;
}
项目:text_converter    文件:AdsManager.java   
@Nullable
public static PublisherAdView addBannerAds(Context context, @Nullable ViewGroup container, AdSize... adSizes) {
    if (isPremiumUser(context)) {
        if (container != null) {
            container.setVisibility(View.GONE);
        }
        return null;
    } else {
        if (container == null) return null;
        container.setVisibility(View.VISIBLE);
        PublisherAdView publisherAdView = new PublisherAdView(context);
        publisherAdView.setAdSizes(adSizes);
        publisherAdView.setAdUnitId(AdConstants.AdUnitId.AD_UNIT_ID_NATIVE_MAIN_320_50);

        PublisherAdRequest.Builder builder = new PublisherAdRequest.Builder();
        if (BuildConfig.DEBUG) builder.addTestDevice(TEST_DEVICE_ID);

        publisherAdView.loadAd(builder.build());
        container.removeAllViews();
        container.addView(publisherAdView);
        return publisherAdView;
    }
}
项目:prebid-mobile-android    文件:DFPBannerFragment.java   
private void setupBannerWithWait(final int waitTime) {

        FrameLayout adFrame = (FrameLayout) root.findViewById(R.id.adFrame2);
        adFrame.removeAllViews();
        adView2 = new PublisherAdView(getActivity());
        adView2.setAdUnitId(Constants.DFP_BANNER_ADUNIT_ID_300x250);
        adView2.setAdSizes(new AdSize(300, 250));
        adView2.setAdListener(adListener);
        adFrame.addView(adView2);
        //region PriceCheckForDFP API usage
        PublisherAdRequest.Builder builder = new PublisherAdRequest.Builder();
        PublisherAdRequest request = builder.build();
        Prebid.attachBidsWhenReady(request, Constants.BANNER_300x250, this, waitTime, this.getActivity());
        //endregion

    }
项目:mobile-sdk-android    文件:GooglePlayDFPBanner.java   
/**
 * Interface called by the AN SDK to request an ad from the mediating SDK.
 *
 * @param mBC                 the object which will be called with events from the 3rd party SDK
 * @param activity            the activity from which this is launched
 * @param parameter           String parameter received from the server for instantiation of this object
 * @param adUnitID            The 3rd party placement, in DFP this is the adUnitID
 * @param width               Width of the ad
 * @param height              Height of the ad
 * @param targetingParameters targetingParameters
 */
@Override
public View requestAd(MediatedBannerAdViewController mBC, Activity activity, String parameter, String adUnitID,
                      int width, int height, TargetingParameters targetingParameters) {
    adListener = new GooglePlayAdListener(mBC, super.getClass().getSimpleName());
    adListener.printToClog(String.format(" - requesting an ad: [%s, %s, %dx%d]",
            parameter, adUnitID, width, height));

    DFBBannerSSParameters ssparm = new DFBBannerSSParameters(parameter);
    AdSize adSize = ssparm.isSmartBanner ? AdSize.SMART_BANNER : new AdSize(width, height);

    adView = new PublisherAdView(activity);
    adView.setAdUnitId(adUnitID);
    adView.setAdSizes(adSize);
    adView.setAdListener(adListener);

    adView.loadAd(buildRequest(ssparm, targetingParameters));

    return adView;
}
项目:prebid-mobile-android    文件:DFPBannerFragment.java   
private void setupBannerWithoutWait() {
    FrameLayout adFrame = (FrameLayout) root.findViewById(R.id.adFrame);
    adFrame.removeAllViews();
    adView1 = new PublisherAdView(getActivity());
    adView1.setAdUnitId(Constants.DFP_BANNER_ADUNIT_ID_320x50);
    adView1.setAdSizes(new AdSize(320, 50));
    adView1.setAdListener(adListener);
    adFrame.addView(adView1);
    //region PriceCheckForDFP API usage
    PublisherAdRequest.Builder builder = new PublisherAdRequest.Builder();
    PublisherAdRequest request = builder.build();
    Prebid.attachBids(request, Constants.BANNER_320x50, this.getActivity());
    //endregion
    adView1.loadAd(request);
}
项目:hotmob-android-sdk    文件:MediationBannerFragment.java   
private void getBanner(String iu){
    final PublisherAdView adView = new PublisherAdView(getContext());
    adView.setAdUnitId(iu);
    adView.setAdSizes(AdSize.SMART_BANNER);
    AdListener mAdListener = new AdListener() {
        @Override
        public void onAdClosed() {
            super.onAdClosed();
        }

        @Override
        public void onAdFailedToLoad(int errorCode) {
            super.onAdFailedToLoad(errorCode);
        }

        @Override
        public void onAdLeftApplication() {
            super.onAdLeftApplication();
        }

        @Override
        public void onAdOpened() {
            super.onAdOpened();
        }

        @Override
        public void onAdLoaded() {
            super.onAdLoaded();
            bannerContainer.addView(adView);
        }
    };
    adView.setAdListener(mAdListener);
    PublisherAdRequest adRequest = new PublisherAdRequest.Builder().build();
    adView.loadAd(adRequest);
}
项目:hotmob-android-sdk    文件:MediationListAdapter.java   
@NonNull
@Override
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
    // Get the data item for this position
    String item = getItem(position);
    // Check if an existing view is being reused, otherwise inflate the view
    if (convertView == null) {
        convertView = LayoutInflater.from(getContext()).inflate(R.layout.listitem_mediation_banner, parent, false);
    }
    // Lookup view for data population
    TextView adCode = convertView.findViewById(R.id.adcode);
    final ViewGroup bannerContainer = convertView.findViewById(R.id.banner_view);
    // Populate the data into the template view using the data object
    adCode.setText(item);
    if (bannerContainer.getChildCount() == 0) {
        final PublisherAdView adView = new PublisherAdView(getContext());
        adView.setAdUnitId(item);
        adView.setAdSizes(AdSize.SMART_BANNER);
        AdListener mAdListener = new AdListener() {
            @Override
            public void onAdClosed() {
                super.onAdClosed();
            }

            @Override
            public void onAdFailedToLoad(int errorCode) {
                super.onAdFailedToLoad(errorCode);
            }

            @Override
            public void onAdLeftApplication() {
                super.onAdLeftApplication();
            }

            @Override
            public void onAdOpened() {
                super.onAdOpened();
            }

            @Override
            public void onAdLoaded() {
                super.onAdLoaded();
                bannerContainer.addView(adView);
            }
        };
        adView.setAdListener(mAdListener);
        PublisherAdRequest adRequest = new PublisherAdRequest.Builder().build();
        adView.loadAd(adRequest);
    }
    // Return the completed view to render on screen
    return convertView;
}
项目:react-native-admob    文件:RNPublisherBannerViewManager.java   
private void createAdView() {
    if (this.adView != null) this.adView.destroy();

    final Context context = getContext();
    this.adView = new PublisherAdView(context);
    this.adView.setAppEventListener(this);
    this.adView.setAdListener(new AdListener() {
        @Override
        public void onAdLoaded() {
            int width = adView.getAdSize().getWidthInPixels(context);
            int height = adView.getAdSize().getHeightInPixels(context);
            int left = adView.getLeft();
            int top = adView.getTop();
            adView.measure(width, height);
            adView.layout(left, top, left + width, top + height);
            sendOnSizeChangeEvent();
            sendEvent(RNPublisherBannerViewManager.EVENT_AD_LOADED, null);
        }

        @Override
        public void onAdFailedToLoad(int errorCode) {
            String errorMessage = "Unknown error";
            switch (errorCode) {
                case PublisherAdRequest.ERROR_CODE_INTERNAL_ERROR:
                    errorMessage = "Internal error, an invalid response was received from the ad server.";
                    break;
                case PublisherAdRequest.ERROR_CODE_INVALID_REQUEST:
                    errorMessage = "Invalid ad request, possibly an incorrect ad unit ID was given.";
                    break;
                case PublisherAdRequest.ERROR_CODE_NETWORK_ERROR:
                    errorMessage = "The ad request was unsuccessful due to network connectivity.";
                    break;
                case PublisherAdRequest.ERROR_CODE_NO_FILL:
                    errorMessage = "The ad request was successful, but no ad was returned due to lack of ad inventory.";
                    break;
            }
            WritableMap event = Arguments.createMap();
            WritableMap error = Arguments.createMap();
            error.putString("message", errorMessage);
            event.putMap("error", error);
            sendEvent(RNPublisherBannerViewManager.EVENT_AD_FAILED_TO_LOAD, event);
        }

        @Override
        public void onAdOpened() {
            sendEvent(RNPublisherBannerViewManager.EVENT_AD_OPENED, null);
        }

        @Override
        public void onAdClosed() {
            sendEvent(RNPublisherBannerViewManager.EVENT_AD_CLOSED, null);
        }

        @Override
        public void onAdLeftApplication() {
            sendEvent(RNPublisherBannerViewManager.EVENT_AD_LEFT_APPLICATION, null);
        }
    });
    this.addView(this.adView);
}