Hướng dẫn này dành cho những nhà xuất bản muốn thêm quảng cáo đồng hành vào quá trình triển khai IMA Android.
Điều kiện tiên quyết
- Ứng dụng Android có tích hợp SDK IMA. Hãy xem BasicExample nếu bạn chưa có ứng dụng tích hợp SDK. Nếu bạn cần trợ giúp triển khai SDK IMA trong ứng dụng, hãy xem bài viết Thiết lập SDK IMA.
- Thẻ quảng cáo được định cấu hình để trả về quảng cáo đồng hành. Nếu bạn cần mẫu, hãy xem phần Câu hỏi thường gặp của chúng tôi.
Thêm quảng cáo đồng hành vào ứng dụng
Hãy làm theo hướng dẫn để thêm một vị trí quảng cáo đồng hành và hiển thị quảng cáo đồng hành trong ứng dụng của bạn.
Tạo một ViewGroup để hiển thị quảng cáo đồng hành
Trước khi yêu cầu quảng cáo đồng hành, bạn cần tạo một không gian cho quảng cáo đó trong bố cục của mình. Trong XML bố cục, hãy thêm một phần tử ViewGroup; ví dụ này sử dụng LinearLayout. Trong bước sau, bạn sẽ truyền thông tin tham chiếu đến phần tử này cho AdDisplayContainer.
Nếu bạn đang tích hợp vào ứng dụng BasicExample, hãy thêm nội dung này vào tệp activity_my.xml, bên dưới videoPlayerContainer.
<LinearLayout
android:id="@+id/companionAdSlot"
android:layout_width="match_parent"
android:layout_height="250dp"
android:layout_gravity="center_horizontal"
android:gravity="center"
android:orientation="vertical"
android:textAlignment="center" />
Tạo một CompanionAdSlot
Bước tiếp theo là tạo một đối tượng CompanionAdSlot, sau đó thêm đối tượng này vào một thực thể ArrayList<CompanionAdSlot>.
Giao diện AdDisplayContainer lấy danh sách các vị trí quảng cáo đồng hành để bạn có thể hiển thị nhiều quảng cáo đồng hành cùng một lúc. Bạn cần tạo một thực thể của lớp ImaSdkFactory để tạo đối tượng CompanionAdSlot.
public void createCompanionAdSlot(ViewGroup companionViewGroup) {
ImaSdkFactory sdkFactory = ImaSdkFactory.getInstance();
CompanionAdSlot companionAdSlot = sdkFactory.createCompanionAdSlot(companionViewGroup);
companionAdSlot.setSize(300, 250);
ArrayList<CompanionAdSlot> companionAdSlots = new ArrayList<CompanionAdSlot>();
companionAdSlots.add(companionAdSlot);
}
Tạo một vị trí quảng cáo đồng hành cho mỗi kích thước quảng cáo đồng hành mà bạn dự định hiển thị trong ứng dụng. IMA SDK sẽ điền sẵn vào vị trí quảng cáo đồng hành bất kỳ quảng cáo đồng hành nào từ phản hồi VAST có kích thước khớp với chiều cao và chiều rộng của khung hiển thị.
IMA SDK cũng hỗ trợ việc sử dụng
quảng cáo đồng hành có kích thước linh hoạt.
Sau khi tạo companionAdSlots, hãy thêm các đối tượng đó vào AdsLoader. Các ví dụ sau đây minh hoạ cách thực hiện việc này, tuỳ thuộc vào việc bạn đang sử dụng Tiện ích Exoplayer-IMA hay các cách triển khai IMA khác không sử dụng tiện ích này.
Tiện ích Exoplayer-IMA
public void setCompanionAdSlotExoPlayer(
Context context, ArrayList<CompanionAdSlot> companionAdSlots) {
ImaAdsLoader adsLoader =
new ImaAdsLoader.Builder(context).setCompanionAdSlots(companionAdSlots).build();
}
Các cách triển khai khác
public void setCompanionAdSlot(
AdDisplayContainer adDisplayContainer, ArrayList<CompanionAdSlot> companionAdSlots) {
adDisplayContainer.setCompanionSlots(companionAdSlots);
}
Chỉ vậy thôi! Ứng dụng của bạn hiện đang hiển thị quảng cáo đồng hành.
Hiển thị quảng cáo đồng hành linh hoạt
IMA hỗ trợ quảng cáo đồng hành linh hoạt. Những quảng cáo đồng hành này có thể đổi kích thước cho phù hợp với kích thước của vị trí quảng cáo. Các mẫu này lấp đầy 100% chiều rộng của chế độ xem gốc, sau đó đổi kích thước
chiều cao để phù hợp với nội dung của quảng cáo đồng hành. Các kích thước này được đặt bằng cách sử dụng kích thước đồng hành Fluid trong Ad Manager. Hãy xem hình ảnh sau đây để biết vị trí đặt giá trị này.

Cập nhật ứng dụng Android cho thiết bị đồng hành linh hoạt
Bạn có thể khai báo một vùng quảng cáo đồng hành linh hoạt bằng cách cập nhật phương thức CompanionAdSlot.setSize() để lấy CompanionAdSlot.FLUID_SIZE làm cả hai tham số.
companionAdSlot.setSize(CompanionAdSlot.FLUID_SIZE, CompanionAdSlot.FLUID_SIZE);
Câu hỏi thường gặp
- Tôi đã làm theo hướng dẫn nhưng không thấy quảng cáo đồng hành. Tôi nên làm gì?
- Trước tiên, hãy kiểm tra để đảm bảo thẻ của bạn thực sự trả về quảng cáo đồng hành. Để làm việc này, hãy mở thẻ trong trình duyệt web và tìm thẻ
<CompanionAds>. Nếu bạn thấy điều đó, hãy kiểm tra để đảm bảo kích thước của quảng cáo đồng hành được trả về giống với kích thước mà bạn đang truyền vào đối tượngCompanionAdSlot. - Vị trí quảng cáo đồng hành của tôi sẽ trông như thế nào khi làm theo hướng dẫn này?
Hình ảnh sau đây được tạo từ BasicExample và có video nội dung đang phát ở trên cùng với quảng cáo đồng hành bên dưới.