با شروع از Google Mobile Ads (GMA) نسخه 21.0.0، میتوانید مقداردهی اولیه SDK و بارگیری آگهی بهینهسازی شده را فعال کنید تا پاسخگویی کلی تبلیغات را بهبود ببخشید و به جلوگیری از خطاهای «برنامه پاسخ نمیدهد» (ANR) در برنامهتان کمک کنید. این راهنما تغییراتی را که باید برای فعال کردن این بهینهسازیها انجام دهید، تشریح میکند.
دو پرچم بهینهسازی موجود است: OPTIMIZE_INITIALIZATION و OPTIMIZE_AD_LOADING . هنگامی که آنها روشن می شوند، وظایف اولیه و بارگذاری آگهی که به زمان پردازش طولانی نیاز دارند در رشته های پس زمینه بارگذاری می شوند.
دستورالعمل های زیر را دنبال کنید تا تگ های <meta-data> مربوطه را در فایل AndroidManifest.xml برنامه خود اضافه کنید و پرچم ها را روشن کنید. توجه داشته باشید که می توانید یک یا هر دو گزینه را در یک برنامه روشن کنید.
بهینه سازی اولیه SDK تبلیغات موبایل گوگل
بهترین راه برای بهینه سازی مقداردهی اولیه، فراخوانی MobileAds.initialize() بر روی یک رشته پس زمینه است، همانطور که در راهنمای Get Started توضیح داده شده است. اگر قبلاً این کار را انجام می دهید، نیازی به فعال کردن این پرچم ندارید.
اگر باید متد را در رشته اصلی فراخوانی کنید، فعال کردن پرچم زیر برخی از کارهای اولیه را به رشته پسزمینه منتقل میکند.
تاریخ آخرین بهروزرسانی 2025-08-29 بهوقت ساعت هماهنگ جهانی.
[null,null,["تاریخ آخرین بهروزرسانی 2025-08-29 بهوقت ساعت هماهنگ جهانی."],[[["\u003cp\u003eStarting with Google Mobile Ads SDK version 21.0.0, you can optimize SDK initialization and ad loading to enhance ad responsiveness and mitigate ANR errors.\u003c/p\u003e\n"],["\u003cp\u003eTo enable these optimizations, you need to add specific \u003ccode\u003e<meta-data>\u003c/code\u003e tags to your app's \u003ccode\u003eAndroidManifest.xml\u003c/code\u003e file, controlling initialization and ad loading separately.\u003c/p\u003e\n"],["\u003cp\u003eBy default, both optimization flags (\u003ccode\u003eOPTIMIZE_INITIALIZATION\u003c/code\u003e and \u003ccode\u003eOPTIMIZE_AD_LOADING\u003c/code\u003e) are set to \u003ccode\u003efalse\u003c/code\u003e and require manual activation.\u003c/p\u003e\n"],["\u003cp\u003eOptimizing initialization is best achieved by calling \u003ccode\u003eMobileAds.initialize()\u003c/code\u003e on a background thread; if this is not feasible, enabling the \u003ccode\u003eOPTIMIZE_INITIALIZATION\u003c/code\u003e flag helps by offloading some tasks to a background thread.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eOPTIMIZE_AD_LOADING\u003c/code\u003e flag enhances ad load calls for all ad formats, improving overall ad loading performance.\u003c/p\u003e\n"]]],[],null,["Select platform: [Android](/ad-manager/mobile-ads-sdk/android/optimize-initialization \"View this page for the Android platform docs.\") [Unity](/ad-manager/mobile-ads-sdk/unity/optimize-initialization \"View this page for the Unity platform docs.\")\n\n\u003cbr /\u003e\n\nStarting from Google Mobile Ads (GMA) SDK version 21.0.0, you can enable\noptimized SDK initialization and ad loading to improve the overall\nresponsiveness of ads and help prevent [\"Application Not Responding\"\n(ANR)](//developer.android.com/topic/performance/vitals/anr) errors on your app.\nThis guide outlines the changes you need to make to enable these optimizations.\n\nRequirements\n\n- Complete the [Get Started guide](/ad-manager/mobile-ads-sdk/android/quick-start).\n\n\u003c!-- --\u003e\n\n- Google Mobile Ads SDK version 21.0.0 or higher.\n\nUpdate your manifest file\n\nThere are two optimization flags available: `OPTIMIZE_INITIALIZATION` and\n`OPTIMIZE_AD_LOADING`. Once they're turned on, the initialization and ad\nloading tasks that require extended processing time are offloaded to\nbackground threads.\n\nFollow the instructions below to add the corresponding `\u003cmeta-data\u003e` tags in\nyour app's `AndroidManifest.xml` file and turn on the flags. Note that you can\nturn on one or both options in the same app.\n| **Important:** Starting with Google Mobile Ads SDK version 24.0.0, the `OPTIMIZE_INITIALIZATION` and `OPTIMIZE_AD_LOADING` flags are set to `true` by default. In versions prior to 24.0.0, these flags are set to `false` by default.\n\nOptimize Google Mobile Ads SDK initialization\n\n: The best way to optimize initialization is to call\n [`MobileAds.initialize()`](/ad-manager/mobile-ads-sdk/android/reference/com/google/android/gms/ads/MobileAds#initialize(android.content.Context,com.google.android.gms.ads.initialization.OnInitializationCompleteListener))\n on a background thread, as described in the\n [Get Started guide](/ad-manager/mobile-ads-sdk/android/quick-start#initialize_the_mobile_ads_sdk).\n If you are already doing so, you don't need to enable this flag.\n\n If you must call the method on the main thread, enabling the flag below will\n move some of the initialization tasks to the background thread. \n\n ```scdoc\n \u003cmanifest\u003e\n ...\n \u003capplication\u003e\n ...\n \u003cmeta-data\n android:name=\"com.google.android.gms.ads.flag.OPTIMIZE_INITIALIZATION\"\n android:value=\"true\"/\u003e\n \u003c/application\u003e\n \u003c/manifest\u003e\n ```\n\nOptimize ad loading\n\n: The flag below optimizes ad load calls for all ad formats:\n\n ```scdoc\n \u003cmanifest\u003e\n ...\n \u003capplication\u003e\n ...\n \u003cmeta-data\n android:name=\"com.google.android.gms.ads.flag.OPTIMIZE_AD_LOADING\"\n android:value=\"true\"/\u003e\n \u003c/application\u003e\n \u003c/manifest\u003e\n ```"]]