Stay organized with collections
Save and categorize content based on your preferences.
Starting from Google Mobile Ads (GMA) SDK version 21.0.0, you can enable
optimized SDK initialization and ad loading to improve the overall
responsiveness of ads and help prevent "Application Not Responding"
(ANR) errors on your app.
This guide outlines the changes you need to make to enable these optimizations.
There are two optimization flags available: OPTIMIZE_INITIALIZATION and
OPTIMIZE_AD_LOADING. Once they're turned on, the initialization and ad
loading tasks that require extended processing time are offloaded to
background threads.
Follow the instructions below to add the corresponding <meta-data> tags in
your app's AndroidManifest.xml file and turn on the flags. Note that you can
turn on one or both options in the same app.
Optimize Google Mobile Ads SDK initialization
The best way to optimize initialization is to call
MobileAds.initialize()
on a background thread, as described in the
Get Started guide.
If you are already doing so, you don't need to enable this flag.
If you must call the method on the main thread, enabling the flag below will
move some of the initialization tasks to the background thread.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-05-30 UTC."],[[["Starting 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."],["To enable these optimizations, you need to add specific `\u003cmeta-data\u003e` tags to your app's `AndroidManifest.xml` file, controlling initialization and ad loading separately."],["By default, both optimization flags (`OPTIMIZE_INITIALIZATION` and `OPTIMIZE_AD_LOADING`) are set to `false` and require manual activation."],["Optimizing initialization is best achieved by calling `MobileAds.initialize()` on a background thread; if this is not feasible, enabling the `OPTIMIZE_INITIALIZATION` flag helps by offloading some tasks to a background thread."],["The `OPTIMIZE_AD_LOADING` flag enhances ad load calls for all ad formats, improving overall ad loading performance."]]],[]]