این صفحه دستورالعملهای مقداردهی اولیه GMA Next-Gen SDK را پوشش میدهد.
قبلاز شروع
این راهنما برای ناشران و پلاتفرمهای طرف سومی است که مستقیماً GMA Next-Gen SDK را ادغام میکنند.
اگر ازطریق پلاتفرم واسطهگری طرف سوم ادغام میکنید، با شریک واسطهگری خودتان بررسی کنید که آیا با GMA Next-Gen SDK سازگار است یا نه.پیکربندی ساخت برای GMA Next-Gen SDK
بخشهای زیر مراحل لازم برای پیکربندی GMA Next-Gen SDK را نشان میدهد.
GMA Next-Gen SDK وابستگی اضافه شود
GMA Next-Gen SDK به وابستگی Gradle دیگری نیاز دارد. در فایل ساخت سطح برنامه، مرجع وابستگی Google Mobile Ads SDK (Legacy) را بردارید و آرتیفکت جدید را اضافه کنید.
| وابستگیهای Gradle | |
|---|---|
| Google Mobile Ads SDK (Legacy) |
Kotlindependencies { // ... implementation("com.google.android.gms:play-services-ads:25.5.0") } Groovydependencies { // ... implementation 'com.google.android.gms:play-services-ads:25.5.0' } |
| GMA Next-Gen SDK |
Kotlindependencies { // ... // Comment out/remove play-services-ads. // implementation("com.google.android.gms:play-services-ads:25.5.0") implementation("com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:1.5.0") } Groovydependencies { // ... // Comment out/remove play-services-ads. // implementation 'com.google.android.gms:play-services-ads:25.5.0' implementation 'com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:1.5.0' } |
مستثنی کردن com.google.android.gms واحد در یکپارچهسازیهای میانجیگری
کاربران میانجیگری همچنان به Google Mobile Ads SDK (Legacy) وابسته هستند. بااینحال، GMA Next-Gen SDK شامل همه کلاسهای موردنیاز آداپتورهای واسطهگری است. برای جلوگیری از خطاهای کامپایل مربوط به نمادهای تکراری، باید Google Mobile Ads SDK (Legacy) را از اینکه توسط میانجیگری آداپتورها بهعنوان وابستگی کشیده شود مستثنا کنید.
در فایل ساخت سطح برنامه، هر دو واحد play-services-ads و
play-services-ads-lite را بهصورت سراسری از همه وابستگیها کنار بگذارید.
Kotlin
configurations.configureEach { exclude(group = "com.google.android.gms", module = "play-services-ads") exclude(group = "com.google.android.gms", module = "play-services-ads-lite") }
Groovy
configurations.configureEach { exclude group: "com.google.android.gms", module: "play-services-ads" exclude group: "com.google.android.gms", module: "play-services-ads-lite" }
تنظیم حداقل و تدوین سطوح Android API
GMA Next-Gen SDK به حداقل سطح میانای برنامهسازی کاربردی Android ۲۴ و سطح میانای برنامهسازی کاربردی Android ۳۴ برای تدوین نیاز دارد. مقادیر minSdk و compileSdk را در
فایل ساخت سطح برنامه به ترتیب به ۲۴ یا بالاتر و ۳۴ یا بالاتر تنظیم کنید.
مقداردهی اولیه GMA Next-Gen SDK
GMA Next-Gen SDK قبلاز بار کردن آگهیها نیاز به مقداردهی اولیه دارد، تغییری از Google Mobile Ads SDK (Legacy) که در آن مقداردهی اولیه اختیاری است اما توصیه میشود. اگر قبلاً کیت توسعه نرمافزار را قبلاز بار کردن آگهیها مقداردهی اولیه نمیکردید، کدتان را بهروز کنید.
این بخش تفاوتهای پیادهسازی مقداردهی اولیه کیت توسعه نرمافزار بین Google Mobile Ads SDK (Legacy) و GMA Next-Gen SDK را پوشش میدهد.
تنظیم شناسه برنامه Ad Manager
مثالهای زیر شناسه برنامه Ad Manager را در Google Mobile Ads SDK (Legacy) و GMA Next-Gen SDK تنظیم میکنند:
| Google Mobile Ads SDK (Legacy) |
ادغام به برچسب <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 خود را بهصورت برنامهریزیشده بهعنوان بخشی از مقداردهی اولیه کیت توسعه نرمافزار ارائه دهید. Kotlin// Initialize the Google Mobile Ads SDK. val initConfig = InitializationConfig.Builder("SAMPLE_APP_ID").build() MobileAds.initialize(this@MainActivity, initConfig) {} جاوا// Initialize GMA Next-Gen SDK. InitializationConfig initConfig = new InitializationConfig.Builder("SAMPLE_APP_ID").build(); MobileAds.initialize(this, initConfig, initializationStatus -> {}); |
مرور تغییرات پیادهسازی
مثالهای زیر Google Mobile Ads SDK (Legacy) و GMA Next-Gen SDK را مقداردهی اولیه میکنند:
| Google Mobile Ads SDK (Legacy) |
برای مقداردهی اولیه «کیت توسعه نرمافزار تبلیغات تلفن همراه Google»،
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) {} } } } جاواimport 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 |
برای مقداردهی اولیه 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. } // SDK initialization is complete. If you don't want to wait for bidding adapters to finish // initializing, start loading ads now. } } } جاوا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(); } } |