Tải một quảng cáo khi mở ứng dụng

SDK có API tải một lần.

Quảng cáo khi mở ứng dụng là một định dạng quảng cáo đặc biệt dành cho những nhà xuất bản muốn kiếm tiền từ màn hình tải ứng dụng của họ. Quảng cáo khi mở ứng dụng được thiết kế để xuất hiện khi người dùng chạy ứng dụng của bạn trên nền trước và họ có thể đóng quảng cáo này bất cứ lúc nào.

Để biết thêm thông tin, hãy xem Hướng dẫn về quảng cáo khi mở ứng dụng.

Tài liệu hướng dẫn này giải thích cách tích hợp quảng cáo khi mở ứng dụng vào một ứng dụng Android.

Điều kiện tiên quyết

Thiết lập GMA Next-Gen SDK.

Luôn thử nghiệm bằng quảng cáo thử nghiệm

Khi tạo và thử nghiệm ứng dụng, hãy nhớ sử dụng quảng cáo thử nghiệm thay vì quảng cáo thực tế. Nếu không làm như vậy, chúng tôi có thể tạm ngưng tài khoản của bạn.

Để tải quảng cáo thử nghiệm, hãy sử dụng mã đơn vị quảng cáo thử nghiệm dành riêng cho quảng cáo khi mở ứng dụng Android:

ca-app-pub-3940256099942544/9257395921

Mã đơn vị quảng cáo này được định cấu hình đặc biệt để trả về quảng cáo thử nghiệm cho mọi yêu cầu. Bạn có thể sử dụng mã này trong ứng dụng của mình khi viết mã, chạy thử nghiệm và gỡ lỗi. Hãy nhớ thay thế mã này bằng mã đơn vị quảng cáo của riêng bạn trước khi xuất bản ứng dụng.

Để biết thông tin chi tiết về quảng cáo thử nghiệm GMA Next-Gen SDK, hãy xem bài viết Bật quảng cáo thử nghiệm.

Tải một quảng cáo

Ví dụ sau đây cho biết cách tải một quảng cáo:

Kotlin

// Load ads after you initialize MobileAds.
AppOpenAd.load(
  AdRequest.Builder(adUnitId).build(),
  object : AdLoadCallback<AppOpenAd> {
    override fun onAdLoaded(ad: AppOpenAd) {
      // App open ad loaded.
      appOpenAd = ad
    }

    override fun onAdFailedToLoad(adError: LoadAdError) {
      // App open ad failed to load.
      Log.e(TAG, "App open ad failed to load: ${adError.message}")
      appOpenAd = null
    }
  },
)

Java

// Load ads after you initialize MobileAds.
AppOpenAd.load(
    new AdRequest.Builder(adUnitId).build(),
    new AdLoadCallback<AppOpenAd>() {
      @Override
      public void onAdLoaded(AppOpenAd ad) {
        // App open ad loaded.
        appOpenAd = ad;
      }

      @Override
      public void onAdFailedToLoad(LoadAdError adError) {
        // App open ad failed to load.
        Log.e(TAG, "App open ad failed to load: " + adError.getMessage());
        appOpenAd = null;
      }
    });

Khi thử nghiệm, hãy sử dụng mã đơn vị quảng cáo thử nghiệm: ca-app-pub-3940256099942544/9257395921.

Hiển thị quảng cáo

Để hiển thị quảng cáo khi mở ứng dụng, hãy sử dụng phương thức show.

Kotlin

private fun showAd(appOpenAd: AppOpenAd, activity: Activity) {
  // Show the ad.
  appOpenAd.show(activity)
}

Java

private void showAd(AppOpenAd appOpenAd, Activity activity) {
  // Show the ad.
  appOpenAd.show(activity);
}

Theo dõi các sự kiện quảng cáo

Trước khi hiển thị quảng cáo, hãy theo dõi các sự kiện trong vòng đời quảng cáo:

Kotlin

private fun listenToAdEvents() {
  // Listen for ad events.
  val ad = appOpenAd
  if (ad == null) {
    Log.e(TAG, "App open ad is not ready yet.")
    return
  }

  ad.adEventCallback =
    object : AppOpenAdEventCallback {
      override fun onAdShowedFullScreenContent() {
        // App open ad did show.
      }

      override fun onAdDismissedFullScreenContent() {
        // App open ad did dismiss.
        appOpenAd = null
      }

      override fun onAdFailedToShowFullScreenContent(
        fullScreenContentError: FullScreenContentError
      ) {
        // App open ad failed to show.
        Log.e(TAG, "App open ad failed to show: ${fullScreenContentError.message}")
      }

      override fun onAdImpression() {
        // App open ad did record an impression.
      }

      override fun onAdClicked() {
        // App open ad did record a click.
      }
    }
}

Java

private void listenToAdEvents() {
  // Listen for ad events.
  if (appOpenAd == null) {
    Log.e(TAG, "App open ad is not ready yet.");
    return;
  }

  appOpenAd.setAdEventCallback(
      new AppOpenAdEventCallback() {
        @Override
        public void onAdShowedFullScreenContent() {
          // App open ad did show.
        }

        @Override
        public void onAdDismissedFullScreenContent() {
          // App open ad did dismiss.
          appOpenAd = null;
        }

        @Override
        public void onAdFailedToShowFullScreenContent(
            @NonNull FullScreenContentError fullScreenContentError) {
          // App open ad failed to show.
          Log.e(TAG, "App open ad failed to show: " + fullScreenContentError.getMessage());
        }

        @Override
        public void onAdImpression() {
          // App open ad did record an impression.
        }

        @Override
        public void onAdClicked() {
          // App open ad did record a click.
        }
      });
}

Khởi động nguội và màn hình tải

Quá trình khởi động nguội xảy ra khi ứng dụng của bạn khởi chạy từ đầu, chẳng hạn như khi người dùng mở ứng dụng lần đầu tiên hoặc sau khi hệ thống kết thúc ứng dụng do thiếu bộ nhớ. Trong quá trình khởi động nguội, bạn không có quảng cáo khi mở ứng dụng đã được tải trước và sẵn sàng hiển thị ngay lập tức.

Do độ trễ của yêu cầu quảng cáo, người dùng có thể tương tác với ứng dụng của bạn trước khi quảng cáo khi mở ứng dụng xuất hiện. Để tránh trải nghiệm người dùng kém, hãy chỉ hiển thị quảng cáo khi mở ứng dụng vào lúc khởi động nguội trên màn hình tải trong khi các thành phần ứng dụng đang tải. Nếu quá trình tải tài sản hoàn tất và người dùng truy cập vào nội dung chính trước khi quảng cáo tải, thì bạn đừng hiển thị quảng cáo.

Tải các thành phần của ứng dụng trên một luồng trong nền để quá trình tải tiếp tục trong khi quảng cáo đang hiển thị.

Các phương pháp hay nhất

Hãy làm theo các phương pháp hay nhất sau đây đối với quảng cáo khi mở ứng dụng:

  • Chỉ hiển thị quảng cáo khi mở ứng dụng đầu tiên sau khi người dùng mở ứng dụng của bạn nhiều lần.
  • Chỉ hiển thị quảng cáo khi mở ứng dụng trong khi người dùng chờ ứng dụng của bạn tải.
  • Nếu màn hình tải của bạn tải xong trong khi quảng cáo đang hiển thị, hãy đóng màn hình tải trong phương thức gọi lại khi quảng cáo bị đóng.