โฆษณาเนทีฟมีฟีเจอร์ขั้นสูงมากมายที่ช่วยให้คุณปรับแต่งเพิ่มเติมและสร้างประสบการณ์การใช้งานโฆษณาที่ดีที่สุด คู่มือนี้จะแสดงวิธีใช้ฟีเจอร์ขั้นสูงของโฆษณาเนทีฟ
ข้อกำหนดเบื้องต้น
- ผสานรวมรูปแบบโฆษณาเนทีฟ
การควบคุมชิ้นงาน
ส่วนนี้จะอธิบายรายละเอียดเกี่ยวกับวิธีปรับแต่งชิ้นงานครีเอทีฟโฆษณาในโฆษณาเนทีฟ คุณมีตัวเลือกในการระบุสัดส่วนภาพที่ต้องการสำหรับชิ้นงานสื่อ และวิธีดาวน์โหลดและแสดงชิ้นงานรูปภาพ
การควบคุมสัดส่วนภาพที่ต้องการของสื่อ
การควบคุมสัดส่วนภาพของสื่อช่วยให้คุณระบุสัดส่วนภาพที่ต้องการของครีเอทีฟโฆษณาได้
เรียกใช้ NativeAdRequest.Builder.setMediaAspectRatio()
ด้วยค่า NativeAd.NativeMediaAspectRatio
หากไม่ได้ตั้งค่า โฆษณาที่แสดงผลอาจมีสัดส่วนภาพของสื่อใดก็ได้
หากตั้งค่า คุณจะปรับปรุงประสบการณ์ของผู้ใช้ได้โดยการระบุประเภทสัดส่วนภาพที่ต้องการ
ตัวอย่างต่อไปนี้จะสั่งให้ SDK แสดงผลรูปภาพหรือวิดีโอที่มีสัดส่วนภาพที่เฉพาะเจาะจง
Kotlin
val adRequest = NativeAdRequest.Builder(
"/21775744923/example/native",
listOf(NativeAd.NativeAdType.NATIVE))
.setMediaAspectRatio(NativeAd.NATIVE_MEDIA_ASPECT_RATIO_LANDSCAPE)
.build()
Java
NativeAdRequest adRequest = new NativeAdRequest.Builder(
"/21775744923/example/native",
List.of(NativeAd.NativeAdType.NATIVE))
.setMediaAspectRatio(NativeAd.NATIVE_MEDIA_ASPECT_RATIO_LANDSCAPE)
.build();
การควบคุมการดาวน์โหลดรูปภาพ
การควบคุมการดาวน์โหลดรูปภาพช่วยให้คุณตัดสินใจได้ว่า SDK จะแสดงผลชิ้นงานรูปภาพหรือเฉพาะ URI
เรียกใช้ NativeAdRequest.Builder.disableImageDownloading()
การควบคุมการดาวน์โหลดรูปภาพจะปิดอยู่โดยค่าเริ่มต้น
เมื่อปิดใช้ GMA Next-Gen SDK จะป้อนข้อมูลทั้งรูปภาพและ URI ให้คุณ
เมื่อเปิดใช้ SDK จะป้อนข้อมูลเฉพาะ URI แทน ซึ่งช่วยให้คุณดาวน์โหลดรูปภาพจริงได้ตามต้องการ
ตัวอย่างต่อไปนี้จะสั่งให้ SDK แสดงผลเฉพาะ URI
Kotlin
val adRequest = NativeAdRequest.Builder(
"/21775744923/example/native",
listOf(NativeAd.NativeAdType.NATIVE))
.setMediaAspectRatio(NativeAd.NATIVE_MEDIA_ASPECT_RATIO_LANDSCAPE)
.disableImageDownloading()
.build()
val adCallback: NativeAdLoaderCallback =
object : NativeAdLoaderCallback {
override fun onNativeAdLoaded(nativeAd: NativeAd) {
// Get the image uri.
val imageUri = nativeAd.image?.uri
}
};
// Load the native ad with the ad request and callback.
NativeAdLoader.load(adRequest, adLoaderCallback);
Java
NativeAdRequest adRequest = new NativeAdRequest.Builder(
"/21775744923/example/native",
List.of(NativeAd.NativeAdType.NATIVE))
.disableImageDownloading()
.build();
NativeAdLoaderCallback adLoaderCallback =
new NativeAdLoaderCallback() {
@Override
public void onNativeAdLoaded(@NonNull NativeAd nativeAd) {
// Get the image uri.
Uri imageUri = nativeAd.getImage().getUri();
}
};
// Load the native ad with the ad request and callback.
NativeAdLoader.load(adRequest, adLoaderCallback);
การควบคุมเพย์โหลดรูปภาพ
โฆษณาบางรายการมีรูปภาพหลายรูปแทนที่จะมีเพียงรูปเดียว ใช้ฟีเจอร์นี้เพื่อระบุว่าแอปของคุณพร้อมที่จะแสดงรูปภาพทั้งหมดหรือเพียงรูปเดียว
การควบคุมเพย์โหลดรูปภาพจะปิดอยู่โดยค่าเริ่มต้น
เมื่อปิดใช้ แอปจะสั่งให้ SDK แสดงผลเฉพาะรูปภาพแรกสำหรับชิ้นงานที่มีรูปภาพหลายรูป
เมื่อเปิดใช้ แอปจะระบุว่าพร้อมที่จะแสดงรูปภาพทั้งหมดสำหรับชิ้นงานที่มีรูปภาพมากกว่า 1 รูป
ตัวอย่างต่อไปนี้จะสั่งให้ SDK แสดงผลชิ้นงานรูปภาพหลายรายการ
ตำแหน่งโฆษณาของตัวเลือกโฆษณาอื่นๆ
ส่วนนี้จะอธิบายรายละเอียดเกี่ยวกับวิธีวางตำแหน่งการวางซ้อนของตัวเลือกโฆษณาอื่นๆ คุณมีตัวเลือกในการตั้งค่าตำแหน่งเป็นมุมใดมุมหนึ่งใน 4 มุม หรือแสดงผลภายในมุมมองที่กำหนดเอง
การควบคุมตำแหน่งของตัวเลือกโฆษณาอื่นๆ
การควบคุมตำแหน่งของ AdChoices ช่วยให้คุณเลือกมุมที่จะแสดงผลไอคอนตัวเลือกโฆษณาอื่นๆ ได้
เรียกใช้ NativeAdRequest.Builder.setAdChoicesPlacement()
ด้วยค่า NativeAdRequest.AdChoicesPlacement
หากไม่ได้ตั้งค่า ระบบจะตั้งค่าตำแหน่งไอคอนตัวเลือกโฆษณาอื่นๆ เป็นด้านขวาบน
หากตั้งค่า ระบบจะวางตัวเลือกโฆษณาอื่นๆ ไว้ในตำแหน่งที่กำหนดเองตามที่ขอ
ตัวอย่างต่อไปนี้แสดงวิธีตั้งค่าตำแหน่งรูปภาพที่กำหนดเองของตัวเลือกโฆษณาอื่นๆ
Kotlin
val adRequest = NativeAdRequest.Builder(
"/21775744923/example/native",
listOf(NativeAd.NativeAdType.NATIVE))
.setAdChoicesPlacement(NativeAdOptions.ADCHOICES_BOTTOM_RIGHT)
.build()
Java
NativeAdRequest adRequest = new NativeAdRequest.Builder(
"/21775744923/example/native",
List.of(NativeAd.NativeAdType.NATIVE))
.setAdChoicesPlacement(NativeAdOptions.ADCHOICES_BOTTOM_RIGHT)
.build();
มุมมองที่กำหนดเองของตัวเลือกโฆษณาอื่นๆ
ฟีเจอร์มุมมองที่กำหนดเองของตัวเลือกโฆษณาอื่นๆ ช่วยให้คุณวางตำแหน่งไอคอนตัวเลือกโฆษณาอื่นๆ ในตำแหน่งที่กำหนดเองได้ ซึ่งแตกต่างจากการควบคุมตำแหน่งของตัวเลือกโฆษณาอื่นๆ ที่อนุญาตให้ระบุได้เพียงมุมใดมุมหนึ่งใน 4 มุม
เรียกใช้ NativeAdView.setAdChoicesView()
ด้วยค่า AdChoicesView
ตัวอย่างต่อไปนี้แสดงวิธีตั้งค่ามุมมองที่กำหนดเองของตัวเลือกโฆษณาอื่นๆ โดยแสดงผลไอคอนตัวเลือกโฆษณาอื่นๆ ภายใน AdChoicesView
Kotlin
override fun onNativeAdLoaded(nativeAd: NativeAd) {
val nativeAdView = NativeAdView(applicationContext)
val adChoicesView = AdChoicesView(this)
nativeAdView.adChoicesView = adChoicesView
}
Java
public void onNativeAdLoaded(@NonNull NativeAd nativeAd) {
NativeAdView nativeAdView = new NativeAdView(getApplicationContext());
AdChoicesView adChoicesView = new AdChoicesView(this);
nativeAdView.setAdChoicesView(adChoicesView);
}
การควบคุมวิดีโอ
ส่วนนี้จะอธิบายรายละเอียดเกี่ยวกับวิธีปรับแต่งประสบการณ์การเล่นโฆษณาวิดีโอ คุณมีตัวเลือกในการตั้งค่าสถานะปิดเสียงเริ่มต้นและใช้การควบคุมการเล่นที่กำหนดเอง
ลักษณะการทำงานของการปิดเสียงเมื่อเริ่มต้น
ลักษณะการทำงานของการปิดเสียงเมื่อเริ่มต้นช่วยให้คุณปิดหรือเปิดเสียงเริ่มต้นของวิดีโอได้
เรียกใช้ VideoOptions.Builder.setStartMuted()
ด้วยค่า boolean และเรียกใช้ NativeAdOptions.Builder.setVideoOptions()
ลักษณะการทำงานของการปิดเสียงเมื่อเริ่มต้นจะเปิดใช้อยู่โดยค่าเริ่มต้น
เมื่อปิดใช้ แอปจะขอให้วิดีโอเริ่มเล่นพร้อมเสียง
เมื่อเปิดใช้ แอปจะขอให้วิดีโอเริ่มเล่นโดยปิดเสียงไว้
ตัวอย่างต่อไปนี้แสดงวิธีเริ่มวิดีโอโดยเปิดเสียง
Kotlin
val videoOptions = VideoOptions.Builder()
.setStartMuted(false)
.build()
val adRequest = NativeAdRequest.Builder(
"/21775744923/example/native",
listOf(NativeAd.NativeAdType.NATIVE))
.setVideoOptions(videoOptions)
.build()
Java
VideoOptions videoOptions = VideoOptions.Builder()
.setStartMuted(false)
.build()
NativeAdRequest adRequest = new NativeAdRequest.Builder(
"/21775744923/example/native",
List.of(NativeAd.NativeAdType.NATIVE))
.setVideoOptions(videoOptions)
.build()
การควบคุมการเล่นที่กำหนดเอง
ฟีเจอร์นี้ช่วยให้คุณขอการควบคุมการป้อนข้อมูลวิดีโอที่กำหนดเองเพื่อเล่น หยุดชั่วคราว หรือปิดเสียงวิดีโอได้
หากต้องการตั้งค่าสถานะปิดเสียงเริ่มต้นของโฆษณา ให้เรียกใช้ VideoOptions.Builder.setCustomControlsRequested()
การควบคุมการเล่นที่กำหนดเองจะปิดอยู่โดยค่าเริ่มต้น
เมื่อปิดใช้ วิดีโอจะแสดงการควบคุมการป้อนข้อมูลที่แสดงผลโดย SDK
หากโฆษณามีเนื้อหาวิดีโอและเปิดใช้การควบคุมที่กำหนดเอง คุณควรแสดงการควบคุมที่กำหนดเองพร้อมกับโฆษณา เนื่องจากโฆษณาจะไม่แสดงการควบคุมใดๆ ด้วยตัวเอง จากนั้นการควบคุมจะเรียกใช้เมธอดที่เกี่ยวข้องใน
VideoOptions.Builder.setCustomControlsRequested()
ตัวอย่างต่อไปนี้แสดงวิธีขอวิดีโอที่มีการควบคุมการเล่นที่กำหนดเอง
Kotlin
val videoOptions: VideoOptions.Builder()
.setCustomControlsRequested(true)
.build()
val adRequest = new NativeAdRequest.Builder(
"/21775744923/example/native",
listOf(NativeAd.NativeAdType.NATIVE))
.setVideoOptions(videoOptions)
.build()
Java
VideoOptions VideoOptions = VideoOptions.Builder()
.setCustomControlsRequested(true)
.build()
NativeAdRequest adRequest = new NativeAdRequest.Builder(
"/21775744923/example/native",
List.of(NativeAd.NativeAdType.NATIVE))
.setVideoOptions(videoOptions)
.build()
ตรวจสอบว่าเปิดใช้การควบคุมที่กำหนดเองอยู่หรือไม่
เนื่องจากระบบไม่ทราบในเวลาที่ส่งคำขอว่าโฆษณาที่แสดงผลจะอนุญาตการควบคุมวิดีโอที่กำหนดเองหรือไม่ คุณจึงต้องตรวจสอบว่าได้เปิดใช้การควบคุมที่กำหนดเองไว้หรือไม่
Kotlin
val adCallback: NativeAdLoaderCallback =
object : NativeAdLoaderCallback {
override fun onNativeAdLoaded(nativeAd: NativeAd) {
val mediaContent = nativeAd.mediaContent;
if (mediaContent != null) {
val videoController = mediaContent.videoController;
val canShowCustomControls = videoController?.isCustomControlsEnabled();
}
}
};
Java
NativeAdLoaderCallback adCallback =
new NativeAdLoaderCallback() {
@Override
public void onNativeAdLoaded(@NonNull NativeAd nativeAd) {
MediaContent mediaContent = nativeAd.getMediaContent();
if (mediaContent != null) {
VideoController videoController = mediaContent.getVideoController();
if (videoController != null) {
boolean canShowCustomControls = videoController.isCustomControlsEnabled();
}
}
}
};
แสดงผลการควบคุมวิดีโอที่กำหนดเอง
แสดงผลการควบคุมวิดีโอที่กำหนดเองโดยใช้แนวทางปฏิบัติแนะนำต่อไปนี้
- แสดงผลมุมมองการควบคุมที่กำหนดเองเป็นองค์ประกอบย่อยของมุมมองโฆษณาเนทีฟ วิธีนี้ช่วยให้การคำนวณการมองเห็นโฆษณาของการวัดแบบเปิดพิจารณาการควบคุมที่กำหนดเองเป็นการกีดขวางที่เป็นมิตร
- หลีกเลี่ยงการแสดงผลการวางซ้อนที่มองไม่เห็นเหนือการดูสื่อทั้งหมด การวางซ้อนจะบล็อกการคลิกในมุมมองสื่อ ซึ่งส่งผลเสียต่อประสิทธิภาพของโฆษณาเนทีฟ ให้สร้างการวางซ้อนขนาดเล็กที่มีขนาดใหญ่พอดีกับการควบคุมแทน
ท่าทางการคลิกที่กำหนดเอง
ท่าทางการคลิกที่กำหนดเองเป็นฟีเจอร์ของโฆษณาเนทีฟที่ช่วยให้คุณลงทะเบียนการปัดในมุมมองโฆษณาเป็นการคลิกโฆษณาได้ ฟีเจอร์นี้ใช้งานได้กับแอปที่ใช้ท่าทางการปัดเพื่อการนำทางเนื้อหา คู่มือนี้จะแสดงวิธีเปิดใช้ท่าทางการคลิกที่กำหนดเองในโฆษณาเนทีฟ
เรียกใช้ NativeAdRequest.Builder.enableCustomClickGestureDirection()
ด้วยค่า NativeAd.SwipeGestureDirection
และค่า boolean
ท่าทางการคลิกที่กำหนดเองจะปิดอยู่โดยค่าเริ่มต้น
เมื่อปิดใช้ แอปจะรองรับลักษณะการทำงานของการคลิกปกติ
เมื่อเปิดใช้ แอปจะรองรับท่าทางการปัดที่กำหนดเอง
ตัวอย่างต่อไปนี้จะใช้ท่าทางสัมผัสการปัดที่กำหนดเองไปทางขวาและคงลักษณะการทำงานของการแตะปกติไว้
Kotlin
val adOptions = NativeAdOptions
.Builder()
.enableCustomClickGestureDirection(
/* swipeDirection */ NativeAdOptions.SWIPE_GESTURE_DIRECTION_RIGHT,
/* tapsAllowed= */ true)
.build();
// You can use the following sample ad unit ID to test custom click gestures.
val adRequest = NativeAdRequest.Builder(
"/21775744923/example/native",
listOf(NativeAd.NativeAdType.NATIVE))
.withNativeAdOptions(adOptions)
.build();
Java
NativeAdOptions adOptions = new NativeAdOptions
.Builder()
.enableCustomClickGestureDirection(
/* swipeDirection */ NativeAdOptions.SWIPE_GESTURE_DIRECTION_RIGHT,
/* tapsAllowed= */ true)
.build();
// You can use the following sample ad unit ID to test custom click gestures.
NativeAdRequest adRequest = new NativeAdRequest.Builder(
"/21775744923/example/native",
List.of(NativeAd.NativeAdType.NATIVE))
.withNativeAdOptions(adOptions)
.build();
รอเหตุการณ์ท่าทางการปัด
หากต้องการรอกิจกรรมท่าทางสัมผัสการปัด ให้เรียกใช้ NativeAd.setAdEventCallback()
ด้วย NativeAdEventCallback และ
ใช้เมธอด onAdSwipeGestureClicked()
Kotlin
val adCallback: NativeAdLoaderCallback =
object : NativeAdLoaderCallback {
override fun onNativeAdLoaded(nativeAd: NativeAd) {
// Implement the onAdSwipeGestureClicked() method.
val nativeAdCallback: NativeAdEventCallback = object : NativeAdEventCallback {
override fun onAdSwipeGestureClicked() {
// A swipe gesture click has occurred.
}
}
}
}
// Load the native ad with the ad request and callback.
NativeAdLoader.load(adRequest, adCallback)
Java
NativeAdLoaderCallback adCallback =
new NativeAdLoaderCallback() {
@Override
public void onNativeAdLoaded(@NonNull NativeAd nativeAd) {
// Implement the onAdSwipeGestureClicked() method.
NativeAdEventCallback nativeAdCallback = new NativeAdEventCallback() {
@Override
public void onAdSwipeGestureClicked() {
// A swipe gesture click has occurred.
}
};
}
};
// Load the native ad with the ad request and callback.
NativeAdLoader.load(adRequest, adCallback);
สื่อกลาง
ท่าทางการคลิกที่กำหนดเองจะใช้งานได้เฉพาะกับโฆษณาเนทีฟที่แสดงผลโดย Google Mobile Ads SDK แหล่งที่มาของโฆษณาที่ ต้องใช้ SDK บุคคลที่สามสำหรับการ แสดงผลจะไม่ตอบสนองต่อการตั้งค่าทิศทางการคลิกที่กำหนดเอง