สื่อกลาง AdMob คือฟีเจอร์ที่ช่วยให้คุณแสดงโฆษณาไปยังแอปของคุณได้จากหลายแหล่งที่มา ซึ่งรวมถึงเครือข่าย AdMob และแหล่งที่มาของโฆษณาบุคคลที่สามในที่เดียว สื่อกลาง AdMob ช่วยเพิ่มให้คุณมีอัตราการส่งโฆษณาสูงที่สุด นอกจากนี้ยังเพิ่มการสร้างรายได้โดยการส่งคำขอโฆษณาไปให้หลายเครือข่ายเพื่อให้มั่นใจได้ว่าคุณจะพบเครือข่ายที่ดีที่สุดที่พร้อมจะแสดงโฆษณา กรณีศึกษา
ข้อกำหนดเบื้องต้น
คุณต้องผสานรวมรูปแบบโฆษณานั้นลงในแอปก่อนจึงจะผสานรวมสื่อกลางสําหรับรูปแบบโฆษณาได้ โดยทําดังนี้
- โฆษณาแบนเนอร์
- โฆษณาคั่นระหว่างหน้า
- โฆษณาเนทีฟ
- โฆษณาที่มีการให้รางวัล
- โฆษณาคั่นระหว่างหน้าที่มีการให้รางวัล
หากเพิ่งเริ่มใช้สื่อกลาง อ่านภาพรวมของสื่อกลาง AdMob
สําหรับการเสนอราคา SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google เวอร์ชัน 18.3.0 ขึ้นไป
เริ่มต้นใช้งาน SDK โฆษณาในอุปกรณ์เคลื่อนที่
คู่มือเริ่มต้นใช้งานฉบับย่อจะแสดงวิธีเริ่มต้นใช้งาน SDK โฆษณาในอุปกรณ์เคลื่อนที่ ในระหว่างการเรียกใช้การเริ่มต้นนั้น ระบบจะเริ่มต้นอะแดปเตอร์สื่อกลางด้วย คุณต้องรอให้เริ่มต้นเสร็จสมบูรณ์ก่อนที่จะโหลดโฆษณาเพื่อให้มั่นใจว่าเครือข่ายโฆษณาทุกเครือข่ายจะเข้าร่วมในคำขอโฆษณาแรก
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีตรวจสอบสถานะการเริ่มต้นของแต่ละอะแดปเตอร์ก่อนที่จะส่งคำขอโฆษณา
Java
import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.initialization.AdapterStatus;
import com.google.android.gms.ads.initialization.InitializationStatus;
import com.google.android.gms.ads.initialization.OnInitializationCompleteListener;
public class MainActivity extends AppCompatActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
new Thread(
() ->
// Initialize the Google Mobile Ads SDK on a background thread.
MobileAds.initialize(
this,
initializationStatus -> {
Map<String, AdapterStatus> statusMap =
initializationStatus.getAdapterStatusMap();
for (String adapterClass : statusMap.keySet()) {
AdapterStatus status = statusMap.get(adapterClass);
Log.d(
"MyApp",
String.format(
"Adapter name: %s, Description: %s, Latency: %d",
adapterClass, status.getDescription(), status.getLatency()));
}
// Start loading ads here...
}))
.start();
}
}
Kotlin
import com.google.android.gms.ads.MobileAds
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val backgroundScope = CoroutineScope(Dispatchers.IO)
backgroundScope.launch {
// Initialize the Google Mobile Ads SDK on a background thread.
MobileAds.initialize(this@MainActivity) { initializationStatus ->
val statusMap =
initializationStatus.adapterStatusMap
for (adapterClass in statusMap.keys) {
val status = statusMap[adapterClass]
Log.d(
"MyApp", String.format(
"Adapter name: %s, Description: %s, Latency: %d",
adapterClass, status!!.description, status.latency
)
)
}
// Start loading ads here...
}
}
}
}
ตรวจสอบคลาสอะแดปเตอร์เครือข่ายโฆษณาที่โหลดโฆษณา
ต่อไปนี้คือตัวอย่างโค้ดที่บันทึกชื่อคลาสเครือข่ายโฆษณาสําหรับโฆษณาแบนเนอร์
Java
public void onAdLoaded() {
Log.d("Banner adapter class name: " + ad.getResponseInfo().getMediationAdapterClassName());
}
Kotlin
override fun onAdLoaded() {
Log.d("Banner adapter class name:" + ad.responseInfo.mediationAdapterClassName)
}
ดูรายละเอียดเกี่ยวกับวิธีการนี้ได้ในResponseInfo
เอกสารประกอบใน getMediationAdapterClassName()
เริ่มต้นออบเจ็กต์โฆษณาด้วยอินสแตนซ์กิจกรรม
ในคอนสตรคเตอร์สําหรับออบเจ็กต์โฆษณาใหม่ (เช่น AdView
) คุณต้องส่งออบเจ็กต์ประเภท Context
ระบบจะส่ง Context
นี้ไปยังเครือข่ายโฆษณาอื่นๆ เมื่อใช้สื่อกลาง เครือข่ายโฆษณาบางเครือข่ายต้องใช้ Context
ที่เข้มงวดมากขึ้นซึ่งมีประเภทเป็น Activity
และอาจแสดงโฆษณาไม่ได้หากไม่มีอินสแตนซ์ Activity
ดังนั้น เราขอแนะนําให้ส่งอินสแตนซ์ Activity
เมื่อเริ่มต้นวัตถุโฆษณา เพื่อให้ได้รับประสบการณ์การใช้งานที่สอดคล้องกับเครือข่ายโฆษณาสื่อกลาง
ใช้โฆษณาแบนเนอร์กับสื่อกลาง AdMob
อย่าลืมปิดใช้การรีเฟรชใน UI แหล่งที่มาของโฆษณาบุคคลที่สามทั้งหมดสําหรับหน่วยโฆษณาแบนเนอร์ที่ใช้ในการแสดงโฆษณาสื่อกลางของ AdMob วิธีนี้จะช่วยป้องกันไม่ให้เกิดการรีเฟรชซ้ำ เนื่องจาก AdMob จะทริกเกอร์การรีเฟรชตามอัตราการรีเฟรชของหน่วยโฆษณาแบนเนอร์ด้วย
ใช้โฆษณาเนทีฟกับสื่อกลาง AdMob
ต่อไปนี้คือแนวทางปฏิบัติแนะนำบางส่วนที่ควรพิจารณาเมื่อใช้โฆษณาเนทีฟในสื่อกลาง AdMob
- นโยบายการแสดงโฆษณาเนทีฟ
- เครือข่ายโฆษณาแต่ละเครือข่ายมีนโยบายของตนเอง เมื่อใช้สื่อกลาง โปรดทราบว่าแอปของคุณยังคงต้องปฏิบัติตามนโยบายของเครือข่ายสื่อกลางที่แสดงโฆษณา
- ใช้
loadAd()
แทนloadAds()
- วิธีการ
loadAds()
จะแสดงเฉพาะโฆษณา Google เท่านั้น สําหรับโฆษณาสื่อกลาง ให้ใช้loadAd()
แทน
กฎหมายคุ้มครองความเป็นส่วนตัวของรัฐในสหรัฐอเมริกาและ GDPR
หากต้องปฏิบัติตามกฎหมายความเป็นส่วนตัวของรัฐในสหรัฐอเมริกาหรือกฎระเบียบให้ความคุ้มครองข้อมูลส่วนบุคคลของผู้บริโภค (GDPR) ให้ทําตามขั้นตอนในการตั้งค่ากฎระเบียบของรัฐในสหรัฐอเมริกาหรือการตั้งค่า GDPR เพื่อเพิ่มพาร์ทเนอร์สื่อกลางในรายชื่อพาร์ทเนอร์โฆษณาของรัฐในสหรัฐอเมริกาหรือ GDPR ของความเป็นส่วนตัวและการรับส่งข้อความของ AdMob หากไม่ดำเนินการดังกล่าว อาจส่งผลให้พาร์ทเนอร์แสดงโฆษณาในแอปไม่ได้
ดูข้อมูลเพิ่มเติมเกี่ยวกับการเปิดใช้การประมวลผลข้อมูลแบบจำกัด (RDP) และการรับความยินยอมตาม GDPR ด้วย SDK สำหรับ User Messaging Platform (UMP) ของ Google