ปรับปรุงเวลาในการโหลด IMA

IMA SDK จะโหลดทรัพยากรที่เกี่ยวข้องเพื่อขอโฆษณา วัดการมองเห็นโฆษณา และรายงานการแสดงโฆษณา การกำหนดค่า IMA ก่อนส่งคำขอโฆษณาจะช่วยให้คุณมีเวลาในการโหลดทรัพยากร IMA ที่เกี่ยวข้องก่อนเล่นโฆษณาได้สูงสุด หน้านี้จะอธิบายวิธีจัดการเวลาในการโหลด IMA ในแอป

โทร ImaSdkFactory.initialize()

วิธีการ ImaSdkFactory.initialize() จะเริ่มต้นโหลดทรัพยากร SDK ล่วงหน้าก่อนการขอโฆษณาครั้งแรก หากต้องการใช้ initialize() คุณต้องมี IMA เวอร์ชัน 3.35.1 ขึ้นไป

เรียก ImaSdkFactory.initialize() เมื่อแอปพลิเคชันเริ่มต้น หรือเรียกให้เร็วที่สุดเท่าที่โครงสร้างแอปอนุญาตในวงจรของแอปพลิเคชัน การเรียก initialize() ใช้พารามิเตอร์ต่อไปนี้

  • context: ใช้บริบทแอปพลิเคชัน ซึ่งพร้อมใช้งานเสมอตลอดอายุการใช้งานของแอปพลิเคชัน
  • settings: ส่งออบเจ็กต์ ImaSdkSettings ที่มีการตั้งค่าค่า การตั้งค่า IMA ที่ใช้ในการเรียก initialize() ต้องเหมือนกับค่าการตั้งค่าที่ใช้ในการเรียก createAdsLoader() IMA SDK จะใช้การตั้งค่าเหล่านี้ โดยเฉพาะการตั้งค่าภาษา สำหรับคีย์แคช เราไม่แนะนําให้ใช้ค่าทดสอบหรือค่าสมมติสําหรับการตั้งค่าที่ใช้ในinitialize() method call เนื่องจากอาจเกิดแคชไม่พบและทำให้เวลาในการโหลดโฆษณาเพิ่มขึ้น

ใช้อินสแตนซ์ AdsLoader ซ้ำ

เราขอแนะนำให้คุณนําAdsLoader เดิมมาใช้ซ้ำเพื่อปรับปรุงเวลาในการโหลด IMA อินเทอร์เฟซ AdsLoader สามารถจัดการคําขอโฆษณาหรือสตรีมหลายรายการ หลีกเลี่ยงการสร้างอินสแตนซ์ AdsLoader ใหม่สำหรับคำขอแต่ละรายการ การสร้างAdsLoaderอินสแตนซ์ใหม่ต้องใช้เวลาในการโหลดและใช้ทรัพยากรของอุปกรณ์เพิ่มเติม

จัดการเวลาในการโหลดด้วยส่วนขยาย ExoPlayer-IMA

แอปที่ใช้ส่วนขยาย ExoPlayer-IMA จะสร้างอินสแตนซ์ AdsLoader ขึ้นมาใหม่ทุกครั้งที่โหลดโฆษณา การเรียกใช้ initialize() จะเร่งคําขอโฆษณาแรกของ AdLoader หากต้องการเร่งคำขอโฆษณาแรกสำหรับกิจกรรมใหม่ ให้โทร initialize() อีกครั้งเมื่อเริ่มกิจกรรมใหม่

ขอโฆษณาล่วงหน้าก่อนเล่น

หากมีสิทธิ์เข้าถึงอินสแตนซ์ AdsLoader ก่อนเริ่มเล่นโฆษณา คุณก็เรียกใช้เมธอด AdsLoader.requestAds() ได้ตั้งแต่เนิ่นๆ การเรียกใช้นี้จะเริ่มต้นการโหลดโฆษณาก่อนแสดงวิดีโอ เมื่อผู้ใช้พร้อมที่จะเริ่มเล่นเนื้อหา ให้เรียกใช้เมธอด AdsManager.init() แล้วรอเหตุการณ์ LOADED เพื่อเล่นโฆษณา