เริ่มต้นใช้งาน

สื่อกลาง 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 เมื่อเริ่มต้นวัตถุโฆษณา เพื่อให้ได้รับประสบการณ์การใช้งานที่สอดคล้องกับเครือข่ายโฆษณาสื่อกลาง

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

ใช้โฆษณาเนทีฟกับสื่อกลาง AdMob

ต่อไปนี้คือแนวทางปฏิบัติแนะนำบางส่วนที่ควรพิจารณาเมื่อใช้โฆษณาเนทีฟในสื่อกลาง AdMob

นโยบายการแสดงโฆษณาเนทีฟ
เครือข่ายโฆษณาแต่ละเครือข่ายมีนโยบายของตนเอง เมื่อใช้สื่อกลาง โปรดทราบว่าแอปของคุณยังคงต้องปฏิบัติตามนโยบายของเครือข่ายสื่อกลางที่แสดงโฆษณา
ใช้ loadAd() แทน loadAds()
วิธีการ loadAds() จะแสดงเฉพาะโฆษณา Google เท่านั้น สําหรับโฆษณาสื่อกลาง ให้ใช้ loadAd() แทน

กฎหมายคุ้มครองความเป็นส่วนตัวของรัฐในสหรัฐอเมริกาและ GDPR

หากต้องปฏิบัติตามกฎหมายความเป็นส่วนตัวของรัฐในสหรัฐอเมริกาหรือกฎระเบียบให้ความคุ้มครองข้อมูลส่วนบุคคลของผู้บริโภค (GDPR) ให้ทําตามขั้นตอนในการตั้งค่ากฎระเบียบของรัฐในสหรัฐอเมริกาหรือการตั้งค่า GDPR เพื่อเพิ่มพาร์ทเนอร์สื่อกลางในรายชื่อพาร์ทเนอร์โฆษณาของรัฐในสหรัฐอเมริกาหรือ GDPR ของความเป็นส่วนตัวและการรับส่งข้อความของ AdMob หากไม่ดำเนินการดังกล่าว อาจส่งผลให้พาร์ทเนอร์แสดงโฆษณาในแอปไม่ได้

ดูข้อมูลเพิ่มเติมเกี่ยวกับการเปิดใช้การประมวลผลข้อมูลแบบจำกัด (RDP) และการรับความยินยอมตาม GDPR ด้วย SDK สำหรับ User Messaging Platform (UMP) ของ Google