ตั้งค่าการเข้าถึงโดยตรงสําหรับ Ad Exchange

Google Mobile Ads SDK รองรับการสร้างรายได้จากแอปด้วยพร็อพเพอร์ตี้ Ad Exchange คู่มือนี้แสดงวิธี กำหนดค่าแอปสำหรับโฆษณาทุกรูปแบบที่ Ad Exchange รองรับ

ข้อกำหนดเบื้องต้น

กำหนดค่าแอปเพื่อเข้าถึง Ad Exchange

เพิ่มรหัสแอป Ad Manager (ระบุใน UI ของ Ad Manager) ลงในไฟล์ AndroidManifest.xml ของแอปผ่านแท็ก <meta-data> ที่มี android:name="com.google.android.gms.ads.APPLICATION_ID" สำหรับ android:value, ให้แทรกรหัสแอป Ad Manager ของคุณเองโดยมีเครื่องหมายคำพูดครอบ

<manifest>
    <application>
        <!-- Sample Ad Manager app ID: ca-app-pub-3940256099942544~3347511713 -->
        <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
    </application>
</manifest>

โปรดทราบว่าหากไม่เพิ่มแท็ก <meta-data> ตามที่แสดงข้างต้น จะทำให้เกิดข้อขัดข้องพร้อมข้อความต่อไปนี้

Missing application ID.

จากนั้นคุณสามารถเริ่มต้น SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google และเลือกรูปแบบโฆษณาที่จะแสดง ส่วนที่เหลือของคู่มือนี้จะใช้รูปแบบแบนเนอร์เพื่อแสดงวิธีโหลดโฆษณาจาก Ad Exchange ขั้นตอนเดียวกันนี้ใช้ได้กับ รูปแบบโฆษณาทั้งหมดที่ SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google รองรับ

โหลดโฆษณาจาก Ad Exchange

คุณสามารถใช้โค้ดเว็บพร็อพเพอร์ตี้ของ Ad Exchange ที่มีเครื่องหมายทับปิดท้ายแทนรหัสหน่วยโฆษณาได้ เช่น ca-mb-app-pub-5629679302779023/

ตัวอย่างต่อไปนี้เพิ่มรหัสเว็บพร็อพเพอร์ตี้ Ad Exchange ลงในคำขอโฆษณาแบนเนอร์

Kotlin

val adRequest = BannerAdRequest.Builder("ca-mb-app-pub-5629679302779023/", AdSize.BANNER).build()

BannerAd.load(
  adRequest,
  object : AdLoadCallback<BannerAd> {
    override fun onAdLoaded(ad: BannerAd) {
      bannerAd = ad
      activity?.runOnUiThread {
        binding.bannerViewContainer.addView(ad.getView(requireActivity()))
      }
    }
  }
)

Java

BannerAdRequest adRequest = new BannerAdRequest.Builder("ca-mb-app-pub-5629679302779023/",
    AdSize.BANNER).build();

BannerAd.load(
    adRequest,
    new AdLoadCallback<BannerAd>() {
      @Override
      public void onAdLoaded(@NonNull BannerAd ad) {
        bannerAd = ad;
        runOnUiThread(
            () -> binding.bannerViewContainer.addView(ad.getView(MainActivity.this)));
      }
    });

โปรดทราบว่าการไม่ใส่เครื่องหมายทับปิดท้ายในโค้ดพร็อพเพอร์ตี้เว็บของ Ad Exchange จะทําให้เกิดข้อผิดพลาดในคําขอโฆษณาพร้อมข้อความต่อไปนี้

Invalid Request. Cannot determine request type. Is your ad unit id correct?

นอกจากนี้ คุณยังแปลงรหัสเว็บพร็อพเพอร์ตี้ Ad Exchange เป็นหน่วยโฆษณาได้ด้วย หลังจากนั้น ให้ใช้ UI ของ Ad Manager เพื่อสร้างแท็ก Ad Exchange แล้วคัดลอกลงในแอป แท็กที่สร้างขึ้นควรมีโค้ดเว็บพร็อพเพอร์ตี้ Ad Exchange ตามด้วยรหัสหน่วยโฆษณาที่สืบทอดโดยไม่มีเครื่องหมายทับปิดท้าย เช่น ca-mb-app-pub-5629679302779023/banner

เท่านี้ก็เรียบร้อย ตอนนี้แอปของคุณพร้อมที่จะโหลดและแสดงโฆษณาแบนเนอร์จาก Ad Exchange แล้ว

นอกจากนี้ คุณยังใช้พร็อพเพอร์ตี้เว็บ Ad Exchange เพื่อโหลดและแสดงโฆษณารูปแบบอื่นๆ จาก Ad Exchange ได้โดยทำตามคำแนะนำที่เกี่ยวข้อง

(ผู้เผยแพร่โฆษณาในยุโรปที่ได้รับอนุมัติเท่านั้น) เพิ่มราคาพื้น

คุณส่งคำขอสำหรับฟีเจอร์ "ราคาพื้น" ได้

เมื่อได้รับอนุมัติแล้ว คุณจะรวมราคาพื้นแบบสาธารณะหรือราคาพื้นแบบส่วนตัวไว้ในคำขอโฆษณาได้ โดยใช้พารามิเตอร์ pubf และ pvtf ตามลำดับ ในตัวอย่างโค้ดต่อไปนี้ ให้แทนที่ "123" ด้วยราคาพื้นฐานในหน่วยไมโครและสกุลเงินเริ่มต้นของเครือข่าย ตัวอย่างการใช้ไมโคร: หากสกุลเงินเริ่มต้นของคุณคือ USD การป้อน "6000000" จะเท่ากับ $6.00

Kotlin

val extras = Bundle();
// Public floor parameter.
extras.putString("pubf", "123");
// Private floor parameter.
extras.putString("pvtf", "123");

val request = AdRequest.Builder("ca-mb-app-pub-5629679302779023/")
    .setGoogleExtrasBundle(extras)
    .build();

Java

Bundle extras = new Bundle();
// Public floor parameter.
extras.putString("pubf", "123");
// Private floor parameter.
extras.putString("pvtf", "123");

AdRequest request = new AdRequest.Builder("ca-mb-app-pub-5629679302779023/")
    .setGoogleExtrasBundle(extras)
    .build();