หน้านี้มีวิธีการเริ่มต้นใช้งาน GMA Next-Gen SDK
ก่อนเริ่มต้น
หากต้องการใช้ GMA Next Gen SDK คุณต้องผสานรวมโดยไม่มีสื่อกลาง หรือใช้ Ad Manager เป็นแพลตฟอร์มสื่อกลาง แพลตฟอร์มสื่อกลางอื่นๆ ใช้ร่วมกับ GMA SDK รุ่นถัดไปไม่ได้
กำหนดค่าบิลด์สำหรับ GMA Next-Gen SDK
ส่วนต่อไปนี้จะแสดงขั้นตอนที่จำเป็นในการกำหนดค่า GMA Next-Gen SDK
รวมการอ้างอิง GMA Next-Gen SDK
GMA Next-Gen SDK ต้องใช้การอ้างอิง Gradle ที่แตกต่างกัน ในไฟล์บิลด์ระดับแอป ให้นำการอ้างอิงไปยังทรัพยากร Dependency ของ Mobile Ads SDK ปัจจุบันออก แล้วรวมอาร์ติแฟกต์ใหม่
| ทรัพยากร Dependency ของ Gradle | |
|---|---|
| ปัจจุบัน |
Kotlindependencies { // ... implementation("com.google.android.gms:play-services-ads:24.9.0") } ดึงดูดdependencies { // ... implementation 'com.google.android.gms:play-services-ads:24.9.0' } |
| GMA Next-Gen SDK |
Kotlindependencies { // ... // Comment out/remove play-services-ads. // implementation("com.google.android.gms:play-services-ads:24.9.0") implementation("com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:0.22.0-beta01") } ดึงดูดdependencies { // ... // Comment out/remove play-services-ads. // implementation 'com.google.android.gms:play-services-ads:24.9.0' implementation 'com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:0.22.0-beta01' } |
ไม่รวมโมดูล com.google.android.gms ในการผสานรวมสื่อกลาง
อแดปเตอร์สื่อกลางจะยังคงขึ้นอยู่กับ Mobile Ads SDK ปัจจุบัน อย่างไรก็ตาม GMA Next-Gen SDK มีคลาสทั้งหมดที่อแดปเตอร์สื่อกลางต้องการ หากต้องการหลีกเลี่ยงข้อผิดพลาดในการคอมไพล์ที่เกี่ยวข้องกับสัญลักษณ์ที่ซ้ำกัน คุณต้องยกเว้นไม่ให้สื่อกลาง ดึง Mobile Ads SDK ปัจจุบันมาเป็นทรัพยากร Dependency
ในไฟล์บิลด์ระดับแอป ให้ยกเว้นทั้งโมดูล play-services-ads และ
play-services-ads-lite จากทรัพยากร Dependency ทั้งหมดทั่วโลก
Kotlin
configurations.configureEach { exclude(group = "com.google.android.gms", module = "play-services-ads") exclude(group = "com.google.android.gms", module = "play-services-ads-lite") }
ดึงดูด
configurations.configureEach { exclude group: "com.google.android.gms", module: "play-services-ads" exclude group: "com.google.android.gms", module: "play-services-ads-lite" }
ตั้งค่าระดับ API ของ Android ขั้นต่ำและคอมไพล์
GMA SDK รุ่นถัดไปกำหนดให้ใช้ระดับ API ของ Android ขั้นต่ำที่ 24 และ
ระดับ API ของ Android ที่คอมไพล์ที่ 34 ปรับค่า minSdk และ compileSdk ใน
ไฟล์บิลด์ระดับแอปเป็น 24 ขึ้นไปและ 34 ขึ้นไปตามลำดับ
เริ่มต้นใช้ GMA Next-Gen SDK
GMA Next-Gen SDK ต้องมีการเริ่มต้นใช้งานก่อนโหลดโฆษณา ซึ่งเป็นการเปลี่ยนแปลงจาก Mobile Ads SDK ปัจจุบันที่การเริ่มต้นใช้งานเป็นแบบไม่บังคับแต่แนะนํา อัปเดตโค้ดหากก่อนหน้านี้คุณไม่ได้เริ่มต้น SDK ก่อนที่จะโหลดโฆษณา
ส่วนนี้จะอธิบายความแตกต่างในการติดตั้งใช้งานการเริ่มต้น SDK ระหว่าง SDK ปัจจุบันกับ GMA SDK รุ่นถัดไป
ตั้งค่ารหัสแอป Ad Manager
ตัวอย่างต่อไปนี้จะตั้งค่ารหัสแอป Ad Manager ใน SDK ปัจจุบันและ GMA Next-Gen
| ปัจจุบัน |
การผสานรวมต้องใช้แท็ก <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="SAMPLE_APP_ID"/> </application> </manifest> |
| GMA Next-Gen SDK |
ระบุรหัสแอป Ad Manager โดยอัตโนมัติเป็นส่วนหนึ่งของการเริ่มต้น SDK Kotlin// Initialize the Google Mobile Ads SDK. val initConfig = InitializationConfig.Builder("SAMPLE_APP_ID").build() MobileAds.initialize(this@MainActivity, initConfig) {} Java// Initialize GMA Next-Gen SDK. InitializationConfig initConfig = new InitializationConfig.Builder("SAMPLE_APP_ID").build(); MobileAds.initialize(this, initConfig, initializationStatus -> {}); |
ตรวจสอบการเปลี่ยนแปลงการติดตั้งใช้งาน
ตัวอย่างต่อไปนี้จะเริ่มต้นใช้งาน SDK ปัจจุบันและ GMA Next-Gen SDK
| ปัจจุบัน |
เรียกใช้ Kotlinimport 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) {} } } } Javaimport com.google.android.gms.ads.MobileAds; 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 -> {}); }) .start(); } } |
| GMA Next-Gen SDK |
เรียกใช้
Kotlinimport 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. } // Other methods on MobileAds can now be called. } } } Javaimport 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. }); // Other methods on MobileAds can now be called. }) .start(); } } |