Adding a video and ads SDK to an app is usually described as a few lines of code, and the core integration often is. The work that decides whether the launch goes smoothly sits around those lines: planning placements, handling privacy correctly, testing properly and releasing carefully. This checklist is for iOS and Android teams who want to ship an SDK integration once and not spend the next month fixing it.
Plan before you write code
Most integration problems start as unasked questions. Settle these with product, ad operations and engineering in the same conversation.
- Define placements. List every placement by screen: a video rail on the home screen, a video section, in-article video, rewarded or interstitial moments. Note the format and expected behavior of each.
- Agree on ownership. Decide who owns placement configuration, demand setup and reporting after launch, so engineering is not the default owner of every change.
- Map existing ad libraries. If the app already uses Google Mobile Ads or Google IMA, confirm how the new SDK works alongside them and whether any setup can be shared or retired.
- Check platform support. Confirm the SDK supports your minimum iOS and Android versions and your build tooling.
- Review app size and startup. Ask what the SDK adds to your binary and whether it initializes at launch or on demand.
- Collect credentials and IDs. Get the account and placement identifiers from the provider before sprint planning, not during it.
Handle privacy and consent correctly
Privacy is where app integrations most often go wrong, and mistakes can mean store rejections, lost demand or regulatory exposure.
Consent and tracking permission
- Consent management first. If you have users in regions covered by consent rules, the consent management platform should run and collect a decision before the SDK requests ads. Confirm the SDK reads the IAB Transparency and Consent Framework signals your platform stores.
- App Tracking Transparency on iOS. Decide when to show Apple’s tracking permission prompt. A prompt with context, shown after the user understands the app, is usually better than one at first launch. Make sure the SDK respects the answer.
- Advertising ID on Android. Declare the advertising ID permission if the SDK needs it, and respect users who have deleted or limited their ID.
- Child-directed settings. If any audience is under age thresholds for children’s privacy rules, configure the SDK accordingly.
Store disclosures
- Update Apple’s privacy manifest and App Store privacy details to reflect data the SDK collects.
- Update the Google Play data safety section to match.
- Add any attribution network identifiers the provider requires for Apple’s SKAdNetwork.
- Publish or update app-ads.txt on your developer website so buyers can verify your authorized sellers.
Build the integration cleanly
With planning and privacy settled, the code itself should be straightforward. Keep a few practices in mind:
- Initialize once, early enough. Initialize the SDK in the app’s startup path after consent is resolved, and avoid blocking the main thread.
- Respect the lifecycle. Pause and resume video correctly when the app backgrounds, the screen rotates or a call comes in.
- Handle no-fill gracefully. A placement with no ad should collapse or show content, never a blank space or a stuck loading state.
- Manage audio. Decide whether video starts muted and how it interacts with other audio in the app, such as podcasts or music.
- Keep code shrinking rules current. On Android, add any rules the provider documents so release builds do not strip required classes.
- Use the provider’s documented interfaces only. Avoid relying on undocumented behavior that can change in an update.
Test like a user, not just a developer
Test ads and test mode are essential, but they do not reveal everything. Cover these cases before release:
- Test ads and live ads in a controlled internal build, since live demand can behave differently.
- Every consent path: accepted, declined, partially accepted and changed later.
- Tracking permission granted and denied on iOS.
- Network conditions: slow connections, switching between Wi-Fi and cellular, and offline.
- Device range: older and lower-memory devices, small and large screens, tablets if supported.
- Interruptions: calls, notifications, backgrounding mid-video and returning later.
- Accessibility: screen reader labels on player controls and clear close buttons.
- Release build behavior, not just debug builds, since code shrinking and signing can change outcomes.
Release gradually
Even a well-tested integration benefits from a careful rollout.
- Use staged releases. Both the App Store and Google Play support gradual rollouts. Start with a small share of users.
- Use remote configuration. Where possible, gate new placements behind a flag so you can switch them off without a new release.
- Set a clear go or no-go check. Agree in advance which crash, performance and engagement signals must hold before expanding.
- Brief support and ad operations. Make sure support knows what changed and ad operations is ready to watch demand from the start of the rollout.
Monitor after launch
Launch is the start of the integration’s life, not the end. Watch these on a regular schedule:
- Stability: crash rate and, on Android, app-not-responding errors linked to the SDK.
- Performance: startup time, memory use and frame drops on screens with video.
- Ad delivery: request volume, fill, render rate and timeouts by placement.
- Engagement: session length, retention and video interaction compared with a control group.
- Discrepancies: differences between SDK reporting and demand partner reports.
- SDK updates: provider release notes, platform policy changes and operating system releases.
Key takeaways
- Plan placements, ownership, existing ad libraries and app size impact before writing code.
- Resolve consent before ad requests, handle tracking permission prompts deliberately and keep store disclosures accurate.
- Handle lifecycle, no-fill and audio behavior so video feels native to the app.
- Test every consent state, network condition and release build, then roll out in stages with remote flags.
- Monitor stability, performance, delivery and engagement continuously after launch.
The Vortex OpenSDK is a native iOS and Android SDK that brings editorial video and monetization into apps, with support for Google IMA and Google Mobile Ads. See what integration involves on our SDK page.