Thiết lập dàn xếp

Hướng dẫn này cho bạn biết cách tích hợp bộ chuyển đổi dàn xếp vào ứng dụng Android.

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

Trước khi tích hợp tính năng dàn xếp cho một định dạng quảng cáo, bạn cần tích hợp định dạng quảng cáo đó vào ứng dụng của mình:

Bạn mới sử dụng tính năng dàn xếp? Hãy đọc bài viết Giới thiệu về tính năng dàn xếp.

Đối với tính năng đặt giá thầu: Google Mobile Ads SDK 18.3.0 trở lên.

Khởi chạy Google Mobile Ads SDK

Hướng dẫn bắt đầu nhanh giúp bạn biết cách khởi chạy Google Mobile Ads SDK. Trong lệnh gọi khởi chạy đó, các bộ chuyển đổi dàn xếp cũng được khởi chạy. Bạn cần phải đợi quá trình khởi chạy hoàn tất trước khi tải quảng cáo để xác minh rằng mọi mạng quảng cáo đều có trong yêu cầu quảng cáo đầu tiên.

Mã mẫu sau đây cho thấy cách kiểm tra trạng thái khởi chạy của từng bộ chuyển đổi trước khi thực hiện yêu cầu quảng cáo.

Java

public void initialize(Context context) {
  new Thread(
          () ->
              // Initialize the Google Mobile Ads SDK on a background thread.
              MobileAds.initialize(context, this::logAdapterStatus))
      .start();
}

private void logAdapterStatus(InitializationStatus initializationStatus) {
  // Check each adapter's initialization status.
  Map<String, AdapterStatus> statusMap = initializationStatus.getAdapterStatusMap();
  for (Map.Entry<String, AdapterStatus> entry : statusMap.entrySet()) {
    String adapterClass = entry.getKey();
    AdapterStatus status = entry.getValue();
    Log.d(
        TAG,
        String.format(
            "Adapter name: %s, Description: %s, Latency: %d",
            adapterClass, status.getDescription(), status.getLatency()));
  }
}

Kotlin

fun initialize(context: Context) {
  CoroutineScope(Dispatchers.IO).launch {
    // Initialize the Google Mobile Ads SDK on a background thread.
    MobileAds.initialize(context, ::logAdapterStatus)
  }
}

private fun logAdapterStatus(initializationStatus: InitializationStatus) {
  // Check each adapter's initialization status.
  for ((adapterClass, status) in initializationStatus.adapterStatusMap) {
    Log.d(
      TAG,
      "Adapter: $adapterClass, Status: ${status.description}, Latency: ${status.latency}ms",
    )
  }
}

Kiểm tra xem lớp bộ chuyển đổi nào của mạng quảng cáo đã tải quảng cáo

Dưới đây là một số mã mẫu sẽ ghi nhật ký tên lớp mạng quảng cáo cho quảng cáo biểu ngữ:

Java

ResponseInfo responseInfo = ad.getResponseInfo();
String adapterClassName = null;
if (responseInfo != null) {
  adapterClassName = responseInfo.getMediationAdapterClassName();
}
Log.d(TAG, "Adapter class name: " + adapterClassName);

Kotlin

Log.d(TAG, "Adapter class name:" + ad.responseInfo?.mediationAdapterClassName)

Hãy tham khảo tài liệu về ResponseInfo trên getMediationAdapterClassName() để biết thông tin chi tiết về phương thức này.

Chạy đối tượng quảng cáo thông qua bản sao Activity

Trong hàm dựng cho đối tượng quảng cáo mới (ví dụ: AdManagerAdView), bạn phải chuyển vào đối tượng thuộc loại Context. Hệ thống sẽ chuyển Context này sang các mạng quảng cáo khác khi bạn sử dụng tính năng dàn xếp. Một số mạng quảng cáo yêu cầu Context hạn chế hơn thuộc loại Activity và không thể phân phát quảng cáo nếu không có bản sao Activity. Do đó, bạn nên chuyển vào bản sao Activity khi khởi chạy đối tượng quảng cáo để xác minh trải nghiệm nhất quán với các mạng quảng cáo đã dàn xếp của mình.

Hãy đảm bảo tắt tính năng làm mới trong tất cả các giao diện người dùng nguồn quảng cáo bên thứ ba cho đơn vị quảng cáo biểu ngữ dùng trong hoạt động dàn xếp. Điều này sẽ giúp tránh xảy ra hiện tượng làm mới hai lần do Ad Manager cũng kích hoạt một lần làm mới dựa trên tốc độ làm mới của đơn vị quảng cáo biểu ngữ.

Sử dụng quảng cáo gốc với tính năng dàn xếp

Dưới đây là một số phương pháp hay nhất bạn cần cân nhắc áp dụng khi triển khai tính năng dàn xếp quảng cáo gốc.

Chính sách về việc hiển thị quảng cáo gốc
Mỗi mạng quảng cáo đều có chính sách riêng. Khi sử dụng tính năng dàn xếp, bạn nên lưu ý rằng ứng dụng của bạn vẫn phải tuân thủ các chính sách của mạng được dàn xếp đã cung cấp quảng cáo.
Sử dụng loadAd() thay vì loadAds()
Phương thức loadAds() chỉ phân phát quảng cáo của Google. Đối với quảng cáo được dàn xếp, hãy sử dụng loadAd() thay thế.

Luật về quyền riêng tư của các bang tại Hoa Kỳ và GDPR

Nếu bạn cần tuân thủ luật về quyền riêng tư của các bang tại Hoa Kỳ hoặc Quy định chung về bảo vệ dữ liệu (GDPR), hãy làm theo các bước trong phần cài đặt Quy định của tiểu bang tại Hoa Kỳ hoặc phần cài đặt GDPR để thêm các đối tác dàn xếp vào danh sách đối tác quảng cáo theo quy định của tiểu bang tại Hoa Kỳ hoặc danh sách đối tác quảng cáo theo GDPR trong phần Quyền riêng tư và thông báo của Ad Manager. Các đối tác sẽ không thể phân phát quảng cáo trên ứng dụng của bạn nếu bạn không làm việc này.

Tìm hiểu thêm về cách bật chế độ xử lý dữ liệu bị hạn chế (RDP) và thu thập sự đồng ý theo GDPR bằng SDK Nền tảng thông báo cho người dùng (UMP) của Google.