โฆษณาเนทีฟบน Android

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

รูปแบบโฆษณาเนทีฟต้องใช้ความไว้วางใจในระดับที่สูงกว่าผู้เผยแพร่โฆษณาในการแสดงโฆษณารูปแบบอื่นๆ โดยปกติแล้ว SDK ต้องการตรวจหาการละเมิดนโยบายและยืนยันว่าเนื้อหาโฆษณาที่ให้แก่ผู้เผยแพร่โฆษณาแสดงต่อผู้ใช้แล้ว

การรองรับโฆษณาแบนเนอร์ในรันไทม์ SDK จะเกิดขึ้นผ่าน SurfaceControlViewHost API วิธีนี้ช่วยให้ SDK แสดงอินเทอร์เฟซผู้ใช้ได้ จากกระบวนการรันไทม์ของ SDK โดยไม่แทรกแซงโดย แอปพลิเคชันไคลเอ็นต์ ใช้โหมด SurfaceView Z ด้านบนหรือ Z ด้านล่างเพื่อระบุว่าแพลตฟอร์มที่แสดงผล UI ของ SDK อยู่เหนือหรือใต้หน้าต่างของแอปพลิเคชันไคลเอ็นต์ เมื่อแสดงผลโฆษณาโดยใช้โหมด Z ด้านบน SDK จะรับ MotionEvents จากการโต้ตอบของผู้ใช้ แต่มุมมองแอปพลิเคชันไคลเอ็นต์จะมองไม่เห็นโฆษณา เมื่อระบบแสดงผลโฆษณาในโหมด Z ด้านล่าง แอปพลิเคชันจะแสดงมุมมองของตัวเองที่ด้านบนของโฆษณา แต่MotionEventsการโต้ตอบของผู้ใช้กับโฆษณาจะไปที่แอปพลิเคชัน ไม่ใช่ SDK

SDK สามารถใช้ไลบรารี privacysandbox.ui กับ Jetpack ได้ ในการสร้างและดูแลเซสชัน UI

คอนเทนเนอร์โฆษณาที่แอปเป็นเจ้าของ

เราได้สร้างต้นแบบเพื่อให้ SDK เป็นเจ้าของมุมมองทั้งหมดที่ประกอบด้วยโฆษณาเนทีฟ (รวมถึงการวางซ้อนของแอปพลิเคชัน) และพบว่าแม้ว่าจะเป็นไปได้ แต่ก็มีข้อจํากัดบางอย่างใน UI และเพิ่มความซับซ้อนในการผสานรวมกับ SDK แนวทางที่ใช้งานได้จริงมากกว่าคือให้แอปพลิเคชันเป็นเจ้าของยอดดูส่วนใหญ่ SDK ยังคงสามารถ เลือกที่จะแสดง UI บางรายการด้วยตนเอง เช่น มุมมองโฆษณา โดยใช้ SandboxedSdkView จาก privacysandbox.ui แนวทางนี้มีความยืดหยุ่นมากที่สุดในการสนับสนุนกรณีการใช้งานที่มีอยู่และในอนาคตสำหรับรูปแบบโฆษณานี้ เมื่อใช้แนวทางนี้ นักพัฒนาแอปจะย้ายองค์ประกอบโฆษณาและจัดสไตล์ได้ตามต้องการ ขณะที่ SDK จะยังคงเป็นเจ้าของโปรแกรมเล่นวิดีโอ (หากต้องการ) และยังคงเข้าถึงการควบคุมสื่อได้

แผนภาพที่แสดงวิธีรับส่งข้อมูลระหว่างผู้เผยแพร่โฆษณากับ SDK
ขั้นตอนการควบคุมโฆษณาเนทีฟที่เสนอ

การแจ้งเตือนเกี่ยวกับสถานะโฆษณา

SDK แต่ละรายการจะพิจารณาพร็อพเพอร์ตี้ที่แตกต่างกันของการดูโฆษณาเพื่อตรวจจับการประพฤติมิชอบและการละเมิดนโยบาย เราต้องการสนับสนุน โดยไม่กำหนดว่า หรือกลายเป็นจุดคอขวดของ SDK โดยเปลี่ยนชุดของ อสังหาริมทรัพย์ที่ค้นหา เราขอแนะนำให้สร้างการแสดงผลของคอนเทนเนอร์โฆษณาและมุมมองย่อยของคอนเทนเนอร์โดยใช้ NativeAdContainerInfo ข้อมูลนี้จะเป็นแบบพาร์เซล ที่มีผู้รับที่หลากหลายซึ่งเปิดเผยข้อมูลที่จำกัดไว้เฉพาะคอนเทนเนอร์โฆษณาและ เนื้อหาขององค์กร โดยที่ข้อมูลดังกล่าวสามารถรักษาความเป็นส่วนตัวและไม่เสียค่าใช้จ่าย ประมวลผล SDK จะเลือกรับหมวดหมู่สัญญาณที่รวมอยู่ใน NativeAdContainerInfo ได้ SDK จะได้รับออบเจ็กต์นี้เมื่อใดก็ตามที่สถานะโฆษณา การเปลี่ยนแปลงในลักษณะที่เกี่ยวข้องกับ SDK เช่น เหตุการณ์ที่เรียกเก็บเงินได้อย่างการแสดงโฆษณา และการคลิกของผู้ใช้"

นอกจากนี้ ผู้เผยแพร่โฆษณาจะเพิ่มแท็กเฉพาะมุมมอง (สตริง) ลงในรายการย่อยแต่ละรายการที่เพิ่มลงใน NativeAdContainer ได้ ซึ่งสามารถใช้เพื่อแจ้งให้ SDK ทราบว่าชิ้นงานโฆษณาใดที่รายการย่อยแต่ละรายการเชื่อมโยงอยู่

เมื่อผู้ใช้คลิกที่การดูของ SDK ไลบรารี UI จะส่งต่อ MotionEvent ที่มีสมบัติถูกแปลเป็นพื้นที่พิกัดของ SDK ไปยังฟังก์ชัน SDK พร้อมกับ MotionEvent ดั้งเดิม สำหรับ Android เวอร์ชันต่อๆ ไป สำรวจวิธีเพิ่มวิธีให้แอปพลิเคชันไคลเอ็นต์โอนโฟกัสการสัมผัส ท่าทางสัมผัสของผู้ใช้ทั้งหมดในส่วนที่เป็นของ SDK ของโฆษณาเนทีฟนี้ซึ่งจัดการโดย SDK

เอกสารรับรอง

การรับรองต่อไปนี้จะใช้ได้กับ SDK เพื่อเพิ่มประสิทธิภาพ การรับประกันเกี่ยวกับการนําเสนอโฆษณา:

  1. เอกสารรับรองความสมบูรณ์ของอุปกรณ์: ใช้ API ของแพลตฟอร์ม เช่น เอกสารรับรองคีย์เพื่อระบุความสมบูรณ์ของอุปกรณ์
  2. ข้อมูลประจำตัว APK: ใช้ SdkSandbox API เช่น SdkSandboxController.getClientPackageName และ PackageManager API เช่น requestChecksum เพื่อยืนยันตัวตน APK
  3. VerifiedMotionEvents: ใน Android เวอร์ชันต่อๆ ไป เราจะพิจารณาอนุญาตให้แอปพลิเคชันไคลเอ็นต์โอนโฟกัสการสัมผัสสำหรับท่าทางสัมผัสทั้งหมดของผู้ใช้ในส่วนโฆษณาเนทีฟของ SDK นั้นเพื่อให้ SDK จัดการ MotionEvents สามารถแปลงเป็น VerifiedMotionEvents ได้โดยใช้ API ของระบบ SDK สามารถแสดง UI ของตนเองเพื่อตอบกลับการโต้ตอบของผู้ใช้หาก เลือก

คำถามที่เปิด

เรายินดีรับความคิดเห็นเกี่ยวกับประเด็นต่อไปนี้

  1. ดีกว่าให้ SDK สร้าง VerifiedMotionEvents เองหรือไม่ หรือทำให้ไลบรารี UI ของผู้ให้บริการทำเช่นนั้นกับ SDK ได้อย่างไร
  2. SDK ควรอนุญาตให้ผู้เผยแพร่โฆษณาเป็นเจ้าของยอดดูที่มีวิดีโอ หรือเป็นเจ้าของยอดดูเหล่านี้เอง
  3. คุณต้องการให้ที่พักใดรวมอยู่ใน AppOwnedAdContainerInfo ออบเจ็กต์ไหม
  4. คุณคาดหวังว่าจะมีโฆษณาหรือคอมโพเนนต์โฆษณาของ SDK กี่รายการแสดงพร้อมกันบนหน้าจอ