kotlin 的 Facebook 广告

Facebook ads for kotlin

我想在我用 kotlin 编写的 android 应用程序上展示 facebook 广告,但每次我尝试添加代码时它都会显示错误,我到处搜索但找不到 kotlin 版本

    adView = new AdView(this, "YOUR_PLACEMENT_ID", AdSize.BANNER_HEIGHT_50);

  // Find the Ad Container
  LinearLayout adContainer = (LinearLayout) findViewById(R.id.banner_container);

  // Add the ad view to your activity layout
  adContainer.addView(adView);

  // Request an ad
  adView.loadAd();

Android Studio 提供了从 Java 到 Kotlin 的转换工具。要找到它,请双击 SHIFT 并键入 'Convert Java to Kotlin'.

adView = AdView(this, "YOUR_PLACEMENT_ID", AdSize.BANNER_HEIGHT_50)
// Find the Ad Container
val adContainer = findViewById<LinearLayout>(R.id.banner_container)
// Add the ad view to your activity layout
adContainer.addView(adView)
// Request an ad
adView.loadAd()

或使用 kotlin 扩展

adView = AdView(this, "YOUR_PLACEMENT_ID", AdSize.BANNER_HEIGHT_50)
// Find the Ad Container and add the ad view to your activity layout
banner_container.addView(adView)
// Request an ad
adView.loadAd()

创建一个简单的 java class 并粘贴下面的 Facebook 广告代码,然后在您要加载和展示广告的地方调用此 class

import android.content.Context;

import com.facebook.ads.Ad;
import com.facebook.ads.AdError;
import com.facebook.ads.InterstitialAd;
import com.facebook.ads.InterstitialAdListener;

public class facebbokAds {
    InterstitialAd interstitialAd;
    Context mcontxt;

    public facebbokAds(Context mcontxt) {
        this.mcontxt = mcontxt;
        intestialload();
    }



    public void intestialload() {
        interstitialAd = new InterstitialAd(mcontxt, "YOUR_PLACEMENT_ID");
        // Create listeners for the Interstitial Ad
        InterstitialAdListener interstitialAdListener = new InterstitialAdListener() {
            @Override
            public void onInterstitialDisplayed(Ad ad) {
                // Interstitial ad displayed callback

            }

            @Override
            public void onInterstitialDismissed(Ad ad) {
                // Interstitial dismissed callback

            }

            @Override
            public void onError(Ad ad, AdError adError) {
                // Ad error callback
            }

            @Override
            public void onAdLoaded(Ad adstrong text) {
                // Interstitial ad is loaded and ready to be displayed
                // Show the ad
                interstitialAd.show();
            }

            @Override
            public void onAdClicked(Ad ad) {
                // Ad clicked callback
            }

            @Override
            public void onLoggingImpression(Ad ad) {
                // Ad impression logged callback
            }
        };

        // For auto play video ads, it's recommended to load the ad
        // at least 30 seconds before it is shown
        interstitialAd.loadAd(
                interstitialAd.buildLoadAdConfig()
                        .withAdListener(interstitialAdListener)
                        .build());
    }
}