Thiết lập quyền truy cập trực tiếp vào Ad Exchange

SDK quảng cáo trên thiết bị di động của Google hỗ trợ việc kiếm tiền từ ứng dụng của bạn bằng một thuộc tính Ad Exchange. Hướng dẫn này cho bạn biết cách định cấu hình ứng dụng cho tất cả các định dạng quảng cáo được Ad Exchange hỗ trợ.

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

Định cấu hình ứng dụng để truy cập vào Ad Exchange

Thêm mã ứng dụng Ad Manager của bạn (được xác định trong giao diện người dùng Ad Manager) vào tệp AndroidManifest.xml của ứng dụng thông qua thẻ <meta-data>android:name="com.google.android.gms.ads.APPLICATION_ID". Đối với android:value, hãy chèn mã ứng dụng Ad Manager của bạn trong dấu ngoặc kép.

<manifest>
    <application>
        <!-- Sample Ad Manager app ID: ca-app-pub-3940256099942544~3347511713 -->
        <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
    </application>
</manifest>

Ngoài ra, xin lưu ý rằng nếu không thêm thẻ <meta-data> như hướng dẫn ở trên, bạn sẽ gặp sự cố với thông báo:

Missing application ID.

Tiếp theo, bạn có thể khởi chạy SDK quảng cáo trên thiết bị di động của Google và chọn một định dạng quảng cáo để hiển thị. Phần còn lại của hướng dẫn này sẽ triển khai định dạng biểu ngữ để minh họa cách bạn có thể tải quảng cáo từ Ad Exchange. Các bước tương tự có thể áp dụng cho mọi định dạng quảng cáo được SDK quảng cáo trên thiết bị di động của Google hỗ trợ.

Tải quảng cáo từ Ad Exchange

Trong ứng dụng của mình, bạn có thể sử dụng mã thuộc tính web trên Ad Exchange có dấu gạch chéo lên ở cuối thay cho mã đơn vị quảng cáo.

Ví dụ: để tải quảng cáo biểu ngữ bằng cách đặt AdManagerAdView trong bố cục cho Activity như sau:

# main_activity.xml
...
  <com.google.android.gms.ads.admanager.AdManagerAdView
      xmlns:ads="http://schemas.android.com/apk/res-auto"
      android:id="@+id/adManagerAdView"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_centerHorizontal="true"
      android:layout_alignParentBottom="true"
      ads:adSize="BANNER"
      ads:adUnitId="ca-mb-app-pub-5629679302779023/">
  </com.google.android.gms.ads.admanager.AdManagerAdView>

Lưu ý rằng việc không thêm dấu gạch chéo lên sau vào mã thuộc tính web Ad Exchange như hiển thị ở trên sẽ dẫn đến lỗi yêu cầu quảng cáo với thông báo:

Invalid Request. Cannot determine request type. Is your ad unit id correct?

Ngoài ra, xin lưu ý rằng bạn có thể chuyển đổi mã thuộc tính web Ad Exchange thành đơn vị quảng cáo. Sau đó, bạn có thể sử dụng giao diện người dùng Ad Manager để tạo Thẻ Ad Exchange và sao chép thẻ đó vào ứng dụng của mình. Thẻ được tạo phải có mã thuộc tính web Ad Exchange, theo sau là mã đơn vị quảng cáo con không có dấu gạch chéo lên, ví dụ: ca-mb-app-pub-5629679302779023/banner

Ngoài ra, bạn có thể tạo AdManagerAdView theo phương thức lập trình:

Java

AdManagerAdView adView = new AdManagerAdView(this);

adView.setAdSizes(AdSize.BANNER);
adView.setAdUnitId("ca-mb-app-pub-5629679302779023/");

// TODO: Add adView to your view hierarchy.

Kotlin

val adView = AdManagerAdView(this)

adView.adSizes = AdSize.BANNER
adView.adUnitId = "ca-mb-app-pub-5629679302779023/"

// TODO: Add adView to your view hierarchy.

Sau khi AdManagerAdView đã sẵn sàng, bạn có thể gọi phương thức loadAd() trong lớp AdManagerAdView và tuỳ chỉnh hoạt động của quảng cáo bằng cách sử dụng sự kiện quảng cáo.

Vậy là xong! Bây giờ, ứng dụng của bạn đã sẵn sàng tải và hiển thị quảng cáo biểu ngữ từ Ad Exchange.

Ngoài ra, bạn có thể sử dụng một thuộc tính web trên Ad Exchange để tải và hiển thị các định dạng quảng cáo khác từ Ad Exchange bằng cách làm theo hướng dẫn tương ứng:

(Chỉ dành cho các nhà xuất bản ở Châu Âu được chấp thuận) Thêm giá sàn

Bạn có thể gửi yêu cầu cho tính năng "Giá sàn".

Sau khi được phê duyệt, bạn có thể đưa giá sàn công khai hoặc giá sàn riêng tư vào yêu cầu quảng cáo bằng cách sử dụng các thông số pubfpvtf tương ứng. Trong ví dụ về mã sau đây, hãy thay "123" bằng giá sàn theo micrô và đơn vị tiền tệ mặc định của mạng. Ví dụ về cách áp dụng đơn vị tiền tệ: nếu đơn vị tiền tệ mặc định của bạn là USD, thì việc nhập "6000000" sẽ tương đương với 6 USD.

Java

Bundle extras = new Bundle();
// Public floor parameter.
extras.putString("pubf", "123");
// Private floor parameter.
extras.putString("pvtf", "123");

AdManagerAdRequest request = new AdManagerAdRequest.Builder()
    .addNetworkExtrasBundle(AdMobAdapter.class, extras)
    .build();

Kotlin

val extras = Bundle();
// Public floor parameter.
extras.putString("pubf", "123");
// Private floor parameter.
extras.putString("pvtf", "123");

val request = AdManagerAdRequest.Builder()
    .addNetworkExtrasBundle(AdMobAdapter::class::java, extras)
    .build();