Hướng dẫn này dành cho các nhà xuất bản muốn thêm quảng cáo đồng hành vào triển khai IMA cho Android của họ.
Đ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 có tích hợp SDK.
- Một 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 mua mẫu, hãy xem phần Câu hỏi thường gặp của chúng tôi.
Các đoạn mồi hữu ích
Nếu bạn vẫn cần triển khai SDK IMA trong ứng dụng của mình, hãy tham khảo bài viết Hướng dẫn Hướng dẫn bắt đầu sử dụng.
Thêm quảng cáo đồng hành vào ứng dụng của bạn
Tạo một ViewGroup để hiển thị quảng cáo đồng hành của bạn
Trước khi yêu cầu một ứng dụng đồng hành, bạn cần tạo một không gian cho ứng dụng đó trong
của bạn. Trong tệp XML bố cục, hãy thêm một phần tử ViewGroup
; này
Ví dụ: sử dụng LinearLayout
. Ở bước sau, bạn sẽ truyền
tham chiếu đến phần tử này đến AdDisplayContainer
của bạn.
Nếu bạn
tích hợp vào ứng dụng BasicExample, hãy thêm tham số này vào
activity_my.xml
bên dưới com.google.android.exoplayer2.ui.PlayerView
.
activity_my.xml
<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 CompanionAdSlot
Bước tiếp theo là tạo đối tượng CompanionAdSlot
,
sau đó thêm vào ArrayList<CompanionAdSlot>
.
AdDisplayContainer
lấy danh sách vùng 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 phiên bản của
ImaSdkFactory
để tạo CompanionAdSlot
.
ImaSdkFactory sdkFactory = ImaSdkFactory.getInstance(); ViewGroup companionViewGroup = (ViewGroup) findViewById(R.id.companionAdSlot); CompanionAdSlot companionAdSlot = sdkFactory.createCompanionAdSlot(); companionAdSlot.setContainer(companionViewGroup); companionAdSlot.setSize(300, 250); ArrayList<CompanionAdSlot> companionAdSlots = new ArrayList<CompanionAdSlot>(); companionAdSlots.add(companionAdSlot);
Tạo vùng quảng cáo đồng hành cho từng kích thước của quảng cáo đồng hành mà bạn định hiển thị trong ứng dụng của mình.
SDK IMA điền sẵn mọi quảng cáo đồng hành từ phản hồi VAST vào vùng quảng cáo đồng hành
có kích thước khớp với chiều cao và chiều rộng của chế độ xem. SDK IMA cũng hỗ trợ sử dụng
đồng hành có kích thước linh hoạt.
Sau khi tạo companionAdSlots
, bạn cần thêm chú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
Ví dụ cơ bản về Android cho IMA, trong đó sử dụng
tiện ích Exoplayer-IMA,
hoặc các triển khai IMA khác không sử dụng tiện ích.
BasicExample
adsLoader = new ImaAdsLoader.Builder(this).setCompanionAdSlots(companionAdSlots).build();
Các cách triển khai khác
adsLoader.getAdDisplayContainer().setCompanionSlots(companionAdSlots);
Vậy là xong! Ứng dụng của bạn đang hiển thị đồng hành quảng cáo.
Hiển thị quảng cáo đồng hành linh hoạt
IMA hiện 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 quảng cáo
vị trí. Chúng lấp đầy 100% chiều rộng của chế độ xem gốc, sau đó đổi kích thước chiều cao cho phù hợp với chiều cao của chế độ xem đồng hành
nội dung. Bạn có thể đặt các giá trị này bằng cách sử dụng kích thước đồng hành Fluid
trong Ad Manager. Xem
hình ảnh sau đây về vị trí đặt giá trị này.
![Hình ảnh minh hoạ chế độ cài đặt quảng cáo đồng hành của Ad Manager. Làm nổi bật tuỳ chọn kích thước đồng hành.](https://developers.google.cn/static/interactive-media-ads/images/ad_manager_fluid_companion.png?authuser=0000&hl=vi)
Cập nhật ứng dụng Android cho tệp đồng hành linh hoạt
Bạn có thể khai báo vị trí đồng hành linh hoạt bằng cách cập nhật
CompanionAdSlot.setSize()
để lấy CompanionAdSlot.FLUID_SIZE
làm cả hai tham số.
ImaSdkFactory sdkFactory = ImaSdkFactory.getInstance(); ViewGroup companionViewGroup = (ViewGroup) findViewById(R.id.companionAdSlot); CompanionAdSlot companionAdSlot = sdkFactory.createCompanionAdSlot(); companionAdSlot.setContainer(companionViewGroup); companionAdSlot.setSize(CompanionAdSlot.FLUID_SIZE, CompanionAdSlot.FLUID_SIZE); ArrayList<CompanionAdSlot> companionAdSlots = new ArrayList<CompanionAdSlot>(); companionAdSlots.add(companionAdSlot);
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 cần làm gì?
- Trước tiên, hãy kiểm tra để đảm bảo thẻ của bạn thực sự đang trả về quảng cáo đồng hành. Việc cần làm
thao tác này, hãy mở thẻ trong trình duyệt web rồi tìm thẻ CompanionAds. Nếu bạn thấy
hãy kiểm tra để đảm bảo rằng kích thước của quảng cáo đồng hành được trả về giống nhau
như các tham số bạn sẽ chuyển vào
CompanionAdSlot
. - Vùng quảng cáo đồng hành của tôi sẽ như thế nào khi làm theo hướng dẫn này?
-
Hình ảnh dưới đâ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.