แบนเนอร์แบบปรับขนาดได้ช่วยให้คุณระบุความกว้างของโฆษณาเพื่อกำหนดขนาดโฆษณาที่เหมาะสมที่สุดสำหรับอุปกรณ์แต่ละเครื่อง แบนเนอร์แบบปรับขนาดได้ที่แทรกในบรรทัดจะแตกต่างจากแบนเนอร์แบบปรับขนาดได้ที่ยึดตำแหน่งไว้ตรงที่มีขนาดใหญ่กว่า สูงกว่า และไม่ได้ใช้ความสูงคงที่ แบนเนอร์แบบปรับขนาดได้ที่แทรกในบรรทัดมีความสูงที่ปรับเปลี่ยนได้ แบนเนอร์เหล่านี้อาจแสดงเต็มหน้าจอหรือมีความสูงสูงสุดตามที่คุณระบุ
คู่มือนี้ครอบคลุมการสร้างแบนเนอร์แบบปรับขนาดได้ในบรรทัดและการตั้งค่าขนาดแบนเนอร์
รูปภาพต่อไปนี้แสดงแบนเนอร์แบบปรับขนาดได้ในบรรทัดในเนื้อหาที่เลื่อนได้
ก่อนเริ่มต้น
ก่อนดำเนินการต่อ โปรดตรวจสอบว่าคุณได้ตั้งค่าโฆษณาแบนเนอร์แล้ว
หากต้องการดูตัวอย่างแบนเนอร์แทรกในบรรทัดแบบปรับขนาดได้ที่สมบูรณ์ ให้ดาวน์โหลดแอปตัวอย่างต่อไปนี้
ติดตั้งใช้งานแบนเนอร์แทรกในบรรทัดแบบปรับขนาดได้
หากต้องการใช้แบนเนอร์แบบปรับขนาดได้ในบรรทัด ให้กำหนดขนาดโฆษณา สร้างคำขอโฆษณา และโหลดโฆษณา
หากต้องการปรับขนาดแบนเนอร์แบบปรับขนาดได้ในบรรทัด ให้กำหนดความกว้างของโฆษณา แนวทางที่พบบ่อยมีดังนี้
- ใช้ความกว้างเต็มหน้าจอ
- ใช้ความกว้างของเลย์เอาต์หลักที่มีโฆษณา
- การปรับความกว้างเพื่อพิจารณาพื้นที่ปลอดภัยของอุปกรณ์
เมื่อสร้างออบเจ็กต์ขนาดโฆษณา ให้ใช้ความกว้างที่คำนวณได้นี้
ทำตามขั้นตอนต่อไปนี้ให้ครบถ้วน
ดูความกว้างของอุปกรณ์หรือตั้งค่าความกว้างโดยทำดังนี้
Kotlin
private val adWidth: Int get() { val displayMetrics = resources.displayMetrics val adWidthPixels = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { val windowMetrics: WindowMetrics = this.windowManager.currentWindowMetrics windowMetrics.bounds.width() } else { displayMetrics.widthPixels } val density = displayMetrics.density return (adWidthPixels / density).toInt() }Java
public int getAdWidth() { DisplayMetrics displayMetrics = getResources().getDisplayMetrics(); int adWidthPixels = displayMetrics.widthPixels; if (VERSION.SDK_INT >= VERSION_CODES.R) { WindowMetrics windowMetrics = this.getWindowManager().getCurrentWindowMetrics(); adWidthPixels = windowMetrics.getBounds().width(); } float density = displayMetrics.density; return (int) (adWidthPixels / density); }หากต้องการรับออบเจ็กต์ขนาดโฆษณาแบบปรับขนาดได้ในบรรทัด ให้ใช้เมธอดแบบคงที่ในคลาสขนาดโฆษณา ดังนี้
Kotlin
val adView = AdView(this@MainActivity) adView.setAdSize(AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(this, adWidth))Java
final AdView adView = new AdView(MainActivity.this); adView.setAdSize(AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(this, getAdWidth()));
กำหนดขนาดโฆษณาให้เล็กกว่าหรือเท่ากับขนาดหน้าจอของอุปกรณ์
หากต้องการกำหนดขนาดหน้าจอสูงสุด ให้ใช้เมธอด Resources.getDisplayMetrics ขนาดออบเจ็กต์ AdSize ใช้ความหนาแน่นของพิกเซลอิสระ (dp) เมื่อเปรียบเทียบ ให้แปลงขนาดหน้าจอจากพิกเซลเป็น dp
ดูรายละเอียดเกี่ยวกับข้อจำกัดด้านขนาดได้ที่แก้ปัญหาการแสดงผลที่ไม่ได้รับโฆษณาใน Ad Manager
หากต้องการอัปเดตหรือสร้างรายการโฆษณาเพื่อใช้แบนเนอร์แบบปรับขนาดได้ โปรดดูหัวข้อตั้งค่ารายการโฆษณาสำหรับแบนเนอร์แบบปรับขนาดได้
ตั้งค่าเลย์เอาต์แบนเนอร์แบบปรับขนาดได้ที่แทรกในบรรทัด
หากต้องการโหลดโฆษณาแบนเนอร์แบบปรับขนาดได้ที่แทรกในบรรทัดล่วงหน้าสำหรับเลย์เอาต์ที่เฉพาะเจาะจง ให้ใช้วิธีการต่อไปนี้
AdSize.getPortraitInlineAdaptiveBannerAdSize(Context context, int width)AdSize.getLandscapeInlineAdaptiveBannerAdSize(Context context, int width)
หากแอปของคุณรองรับมุมมองแนวตั้งและแนวนอน และคุณต้องการโหลดโฆษณาแบนเนอร์แบบปรับขนาดได้ล่วงหน้าในเลย์เอาต์ปัจจุบัน ให้ใช้เมธอด AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(Context context, int width)
เมธอดนี้จะโหลดโฆษณาในเลย์เอาต์ปัจจุบัน
จำกัดความสูงของแบนเนอร์แบบปรับขนาดได้ที่แทรกในบรรทัด
โดยค่าเริ่มต้น แบนเนอร์แบบปรับขนาดได้แบบแทรกในบรรทัดที่สร้างขึ้นโดยไม่มีค่า maxHeight จะมีความสูงสูงสุดเท่ากับความสูงของอุปกรณ์ หากต้องการจำกัดความสูงของแบนเนอร์แบบปรับขนาดได้ในหน้า ให้ใช้เมธอด
AdSize.getInlineAdaptiveBannerAdSize(int width, int maxHeight)