3.2 KiB
3.2 KiB
| name | description |
|---|---|
| ads-levelplay-checks | Diagnose and verify ad mediation (Unity LevelPlay / ironSource and its networks like Unity Ads, InMobi, Liftoff, AdMob) in a mobile game before and after store release - app keys, game ids, adapter versions, integration validation, "Invalid Game ID", "Mediation No fill" 509, app-ads.txt, SKAdNetwork ids, ATT, COPPA setting. Use when ads do not load, a network reports invalid/unknown ids, or the user prepares ads for launch. |
Ad mediation checks (LevelPlay)
No CLI needed; these are checks to run and read. Ask the owner before changing dashboard settings.
Checklist
- Ids per platform. LevelPlay app key + ad unit ids for iOS and Android are different; ship production ids only in release builds and use the public demo app keys from Unity's Mediation demo apps during development so real units never see test traffic.
- Integration. After init call the SDK's
validateIntegration(); the device log (Xcode console, Android logcat tagIntegrationHelper) must list every network as "Adapter - Version x - VERIFIED". Adapter + network SDK versions must be a pair from Unity's adapter tables / CHANGELOGs. - Unity Ads "Invalid Game ID" / iOS "Initialization failed: not found". Often account-side, not code: compare
https://publisher-config.unityads.unity3d.com/games/<gameId>/configurationfor your id with Unity's demo id14851(which answers with a config). If yours 404s or is empty, the Unity Ads project / game id is not set up or not linked to the LevelPlay app: fix it in the Unity dashboard (Monetization > Projects > the game ids, and the LevelPlay network setup using exactly those ids). - 509 "Mediation No fill" before launch is normal: the LevelPlay app is not live / not linked to store URLs. After both listings are public, set the store URLs in the LevelPlay dashboard.
- app-ads.txt on the root of the developer website named in both listings (
https://<domain>/app-ads.txt):OWNERDOMAIN=<domain>, the LevelPlay DIRECT line with your publisher id, and each network's lines (Unity's "App-Ads.txt" doc page lists them). Re-sync now and then. The listing website must match the domain exactly. - iOS: SKAdNetwork ids of every network in Info.plist (refresh from each network's official list when adding one),
NSUserTrackingUsageDescription, ATT prompt before the ad SDK starts,-ObjClinker flag if the SDK requires it. - Android:
AD_IDpermission (declared in Play's advertising ID form), network SDKs listed explicitly when the adapter artifacts declare no dependencies. - Privacy: COPPA "not directed at children" unless the app is for kids; EU / UK / CH consent (CMP) or
non-personalized ads; Data safety + App Privacy list the ad data as shared / tracking (
store-declarations). - Placement sanity: no ads in the first sessions / levels, never mid-round, rewarded always optional; reviewers test the first minutes.
Gotchas
- Adding Google AdMob needs its app id first: the adapter crashes at launch without the manifest / Info.plist id.
- Test ads on real units can get the account flagged: use demo ids or registered test devices.
- A network failing to init does not break mediation; the others still fill once the app is live.