Cải thiện thời gian tải IMA

SDK IMA tải các phần phụ thuộc để yêu cầu quảng cáo, đo lường khả năng xem và báo cáo lượt hiển thị quảng cáo. Bằng cách khởi chạy IMA trước khi tạo yêu cầu quảng cáo, bạn sẽ tối đa hoá thời gian tải các phần phụ thuộc IMA trước khi phát quảng cáo. Trang này trình bày cách xử lý thời gian tải IMA trong ứng dụng.

Gọi cho ImaSdkFactory.initialize()

Phương thức ImaSdkFactory.initialize() bắt đầu tải trước tài nguyên SDK trước yêu cầu quảng cáo đầu tiên. Để sử dụng initialize(), bạn cần có IMA phiên bản 3.35.1 trở lên.

Gọi ImaSdkFactory.initialize() khi khởi động ứng dụng hoặc sớm nhất trong vòng đời của ứng dụng khi cấu trúc ứng dụng cho phép. Lệnh gọi initialize() có các tham số sau:

  • context: Sử dụng ngữ cảnh ứng dụng, luôn có sẵn trong vòng đời của ứng dụng.
  • settings: Truyền đối tượng ImaSdkSettings đã đặt giá trị. Chế độ cài đặt IMA dùng trong lệnh gọi initialize() phải giống với giá trị cài đặt dùng trong lệnh gọi createAdsLoader(). SDK IMA sử dụng các chế độ cài đặt này, đặc biệt là chế độ cài đặt ngôn ngữ, cho khoá bộ nhớ đệm. Bạn không nên sử dụng giá trị thử nghiệm hoặc giá trị giả cho các chế độ cài đặt được sử dụng trong lệnh gọi phương thức initialize(), vì bộ nhớ đệm có thể bị thiếu và làm tăng thời gian tải quảng cáo.

Sử dụng lại thực thể AdsLoader

Để cải thiện thời gian tải IMA, bạn nên sử dụng lại cùng một thực thể AdsLoader. Giao diện AdsLoader có thể xử lý nhiều yêu cầu quảng cáo hoặc yêu cầu phát trực tuyến. Tránh tạo một thực thể AdsLoader mới cho mỗi yêu cầu. Việc tạo một thực thể AdsLoader mới sẽ cần thời gian tải và sử dụng thêm tài nguyên thiết bị.

Yêu cầu quảng cáo trước khi phát

Nếu có quyền truy cập vào thực thể AdsLoader trước khi bắt đầu phát quảng cáo, bạn cũng có thể gọi sớm phương thức AdsLoader.requestAds(). Việc thực hiện lệnh gọi này sẽ bắt đầu tải quảng cáo trước video. Khi người dùng sẵn sàng bắt đầu phát nội dung, hãy gọi phương thức AdsManager.init() và chờ sự kiện LOADED phát quảng cáo.