Unity接入穿山甲GroMore廣告——重構偏2(Banner廣告)
完成前一偏文章后,我們在com下創建一個adtools文件夾,再創建一個類名為BannerAd的BannerAd.java文件。

Android模塊:
1、寫入Banner廣告的單例和Unity接收消息的GameObject名字。
private static volatile BannerAd instance; public static BannerAd Instance() { if (instance == null) { synchronized (BannerAd.class) { if (instance == null) { instance = new BannerAd(); } } } return instance; } //Unity接收消息的名字 public static String AdGameObjectName = "CSJSDK_BannerAd";
2、加載廣告和加載完成的回調。
廣告加載出來后,如果展示,是需要放在一個View中的。
public GMBannerAd mttBannerAd;//加載出來的廣告放在這 public ViewGroup bannerViewLayout;//創建出來的View存在這 public void LoadBannerAd(Activity context,String adUnitId) { Log.e("LoadBanner",adUnitId); mttBannerAd = new GMBannerAd(context, adUnitId); GMAdSlotBanner slotBanner = new GMAdSlotBanner.Builder() .setBannerSize(GMAdSize.BANNER_CUSTOME) .setImageAdSize(UIUtils.getScreenWidth(WXEntryActivity.app), 50) //.setImageAdSize(adSlot.getImgAcceptedWidth(), adSlot.getImgAcceptedHeight())// GMAdSize.BANNER_CUSTOME可以調用setImageAdSize設置大小 .setRefreshTime(10) .setAllowShowCloseBtn(true)//如果廣告本身允許展示關閉按鈕,這里設置為true就是展示。注:目前只有mintegral支持。 .build(); mttBannerAd.setAdBannerListener(new GMBannerAdListener() { @Override public void onAdOpened() { } @Override public void onAdLeftApplication() { } @Override public void onAdClosed() { //OnAdDismiss //手動點擊Banner的關閉按鈕 } @Override public void onAdClicked() { } @Override public void onAdShow() { WXEntryActivity.mUnityPlayer.UnitySendMessage(AdGameObjectName, "onAdShowCallBack",""); } @Override public void onAdShowFail(@NonNull AdError adError) { } }); Log.e("LoadBanner","onAdFailedToLoad"); mttBannerAd.loadAd(slotBanner, new GMBannerAdLoadCallback() { @Override public void onAdFailedToLoad(@NonNull AdError adError) { Log.e("LoadBanner","onAdFailedToLoad___" + adError.code + "__" + adError.message); } @Override public void onAdLoaded() { Log.e("LoadBanner","onAdLoaded"); context.runOnUiThread(new Runnable() { public void run() { try { removeViewFromRootView(context,bannerViewLayout); bannerViewLayout = getFrameLayoutForBanner(context); Log.e("LoadBanner","bannerViewLayout"); View view = mttBannerAd.getBannerView(); Log.e("LoadBanner","getBannerView"); if(view != null) { Log.e("LoadBanner","xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1"); view.setBackgroundColor(Color.WHITE); } Log.e("LoadBanner","setBackgroundColor"); bannerViewLayout.addView(view); Log.e("LoadBanner","bannerViewLayout.addView"); } catch(Exception ex) { Log.e("LoadBanner","xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx2"); } } }); } }); }
3、未完待續
小時候我把老婆種到地下,長大了我能收獲一大堆老婆!
我是威少,我是一名Unity游戲的主程,我為自己帶鹽,希望此文能給您一點點微不足道的幫助,祝你成功!

浙公網安備 33010602011771號