ตั้งค่า GMA Next-Gen SDK

เลือกแพลตฟอร์ม: Android เลือกใหม่ Android iOS Unity Flutter

การผสานรวม GMA Next-Gen SDK เข้ากับแอปเป็นขั้นตอนแรกสู่การแสดงโฆษณา และสร้างรายได้ เมื่อผสานรวม SDK แล้ว คุณสามารถเลือกรูปแบบโฆษณา (เช่น โฆษณาเนทีฟหรือโฆษณาวิดีโอที่มีการให้รางวัล) และทำตามขั้นตอนเพื่อติดตั้งใช้งาน

ก่อนเริ่มต้น

ทำตามขั้นตอนในส่วนต่อไปนี้เพื่อเตรียมแอป

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

  • ตรวจสอบว่าไฟล์บิลด์ของแอปใช้ค่าต่อไปนี้

    • SDK เวอร์ชันต่ำสุด 24 ขึ้นไป
    • SDK เวอร์ชันคอมไพล์ 35 ขึ้นไป
  • สำหรับแอป Kotlin ให้ใช้ Kotlin เวอร์ชันต่ำสุด 1.9

กำหนดค่าแอป

  1. ในไฟล์การตั้งค่า Gradle ให้ใส่ ที่เก็บ Maven ของ Google และ ที่เก็บ Maven Central ดังนี้

    Kotlin

    pluginManagement {
      repositories {
        google()
        mavenCentral()
        gradlePluginPortal()
      }
    }
    
    dependencyResolutionManagement {
      repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
      repositories {
        google()
        mavenCentral()
      }
    }
    
    rootProject.name = "My Application"
    include(":app")

    Groovy

    pluginManagement {
      repositories {
        google()
        mavenCentral()
        gradlePluginPortal()
      }
    }
    
    dependencyResolutionManagement {
      repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
      repositories {
        google()
        mavenCentral()
      }
    }
    
    rootProject.name = "My Application"
    include ':app'
  2. เพิ่มทรัพยากร Dependency สำหรับ GMA Next-Gen SDK ลงในไฟล์บิลด์ระดับแอป ดังนี้

    Kotlin

    dependencies {
      implementation("com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:1.0.1")
    }

    Groovy

    dependencies {
      implementation 'com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:1.0.1'
    }
  3. คลิก Sync Now ดูรายละเอียดเกี่ยวกับการซิงค์ได้ที่ ซิงค์โปรเจ็กต์กับไฟล์ Gradle

เริ่มต้น GMA Next-Gen SDK

เรียก MobileAds.initialize() เพื่อเริ่มต้น GMA Next-Gen SDK คุณต้องเรียกใช้เมธอดนี้ในเธรดเบื้องหลัง หากไม่ทำเช่นนั้นอาจทำให้เกิดข้อผิดพลาด "แอปพลิเคชันไม่ตอบสนอง" (ANR)

Kotlin

import com.google.android.libraries.ads.mobile.sdk.MobileAds
import com.google.android.libraries.ads.mobile.sdk.initialization.InitializationConfig
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 GMA Next-Gen SDK on a background thread.
      MobileAds.initialize(
        this@MainActivity,
        // Sample Ad Manager app ID: ca-app-pub-3940256099942544~3347511713
        InitializationConfig.Builder("SAMPLE_APP_ID").build()
      ) {
        // Adapter initialization is complete.
      }
      // SDK initialization is complete. If you don't want to wait for bidding adapters to finish
      // initializing, start loading ads now.
    }
  }
}

Java

import com.google.android.libraries.ads.mobile.sdk.MobileAds;
import com.google.android.libraries.ads.mobile.sdk.initialization.InitializationConfig;

public class MainActivity extends AppCompatActivity {
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    new Thread(
            () -> {
              // Initialize GMA Next-Gen SDK on a background thread.
              MobileAds.initialize(
                  this,
                  // Sample Ad Manager app ID: ca-app-pub-3940256099942544~3347511713
                  new InitializationConfig.Builder("SAMPLE_APP_ID")
                      .build(),
                  initializationStatus -> {
                    // Adapter initialization is complete.
                  });
              // SDK initialization is complete. If you don't want to wait for bidding adapters to
              // finish initializing, start loading ads now.
            })
        .start();
  }
}

เมธอดนี้จะเริ่มต้น SDK และเรียก Listener การดำเนินการให้เสร็จสมบูรณ์เมื่อการเริ่มต้นทั้ง GMA Next-Gen SDK และอะแดปเตอร์เสร็จสมบูรณ์ หรือหลังจากหมดเวลา 30 วินาที คุณต้องทำขั้นตอนนี้เพียงครั้งเดียว โดยควรทำเมื่อเปิดแอป

หากใช้การทําสื่อกลาง ให้รอจนกว่าจะมีการเรียกใช้ Handler การดำเนินการให้เสร็จสมบูรณ์ก่อนโหลดโฆษณา ซึ่งจะช่วยให้มั่นใจว่าอะแดปเตอร์การทําสื่อกลางทั้งหมดได้รับการเริ่มต้น

GMA Next-Gen SDK หรือ SDK ของพาร์ทเนอร์การทําสื่อกลางGMA Next-Gen SDKอาจโหลดโฆษณาไว้ล่วงหน้า เมื่อเริ่มต้น หากคุณต้องขอความยินยอมจากผู้ใช้ในเขตเศรษฐกิจยุโรป (EEA) ให้ตั้งค่าธงคำขอเฉพาะ เช่น RequestConfiguration.TagForChildDirectedTreatment หรือ RequestConfiguration.TagForUnderAgeOfConsent, หรือ ดำเนินการอื่นๆ ก่อนโหลดโฆษณา โปรดดำเนินการดังกล่าวให้เสร็จสิ้นก่อนที่จะเริ่มต้น GMA Next-Gen SDK

เลือกรูปแบบโฆษณา

GMA Next-Gen SDK ได้นำเข้าแล้ว และพร้อมที่จะติดตั้งใช้งานโฆษณา Ad Manager มีรูปแบบโฆษณาที่แตกต่างกันมากมายให้คุณเลือกรูปแบบที่เหมาะสมที่สุดกับประสบการณ์ของผู้ใช้ในแอป

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

ติดตั้งใช้งานโฆษณาแบนเนอร์

โฆษณาคั่นระหว่างหน้า

หน่วยโฆษณาคั่นระหว่างหน้าจะแสดงโฆษณาแบบเต็มหน้าในแอป คุณควรวางหน่วยโฆษณาประเภทนี้ที่จุดพักและจุดเปลี่ยนแปลงตามปกติในอินเทอร์เฟซของแอป เช่น หลังจากเล่นเกมผ่านด่านในแอปเกม

ติดตั้งใช้งานโฆษณาคั่นระหว่างหน้า

เนทีฟ

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

Google Ad Manager มี 2 วิธีในการติดตั้งใช้งานโฆษณาเนทีฟ ได้แก่ สไตล์โฆษณาเนทีฟและโฆษณาเนทีฟมาตรฐานผ่านการแสดงผลที่กำหนดเอง

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

ติดตั้งใช้งานสไตล์โฆษณาเนทีฟ ติดตั้งใช้งานโฆษณาเนทีฟ (การแสดงผลที่กำหนดเอง)

ได้รับรางวัลแล้ว

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

ติดตั้งใช้งานโฆษณาที่มีการให้รางวัล

โฆษณาคั่นระหว่างหน้าที่มีการให้รางวัล

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

ผู้ใช้ไม่จําเป็นต้องเลือกดูโฆษณาคั่นระหว่างหน้าที่มีการให้รางวัล ซึ่งต่างจากโฆษณาที่มีการให้รางวัล

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

ติดตั้งใช้งานโฆษณาคั่นระหว่างหน้าที่มีการให้รางวัล

โฆษณาเปิดแอป

โฆษณาเปิดแอปเป็นรูปแบบโฆษณาที่ปรากฏเมื่อผู้ใช้เปิดหรือเปลี่ยนกลับไปที่แอปของคุณ โดยโฆษณาจะซ้อนทับหน้าจอการโหลด

ติดตั้งใช้งานโฆษณาเปิดแอป