Skip to main content

Overview

Splash ads are displayed on the splash screen when the app launches. The ad appears alongside your app logo, providing a natural user experience.

Features

  • Natural ad exposure at app launch
  • Maintains brand image with app logo
  • Fixed size of 360px x 270px
  • Supports image ads
Use the test unit ID in development: PUBLIC_TEST_UNIT_ID_SPLASH

Caching Behavior

Splash ads are prefetched and cached on the device so the creative can appear instantly at launch, before any network request completes. On the next launch the cached creative is shown first, and a fresh ad request runs in the background to refresh the cache for subsequent launches.
Because of this prefetch model, a creative that is paused in Ad Control Console may still be shown from the device cache until the next refresh cycle completes on each user’s device. Plan creative pauses and replacements with a buffer for the cache to roll over across the install base.

Ad Size

Splash ads use a fixed size:
  • Size: 360px x 270px (width x height)
  • The ad is displayed at the bottom of the screen, with the app logo placed at the top

Implementation Methods

Splash ads can be implemented in three ways depending on your app’s requirements:
  1. Using AdropSplashAdViewController - The simplest method
  2. Using AdropSplashAdView - Custom splash screen composition
  3. SwiftUI Implementation - For SwiftUI apps

Method 1: Using AdropSplashAdViewController

The simplest implementation method. AdropSplashAdViewController automatically manages the splash screen.

UIKit Implementation

Displaying Splash Ad in SceneDelegate

Initialization Parameters

Properties

Delegate Implementation

AdropSplashAdViewController automatically handles ad loading, display, and timer management. Even if the ad fails to load, onAdClose is automatically called to transition to the main screen.

Integrating with LaunchScreen

The system LaunchScreen is displayed first before showing the splash ad. For a natural user experience, it’s recommended to match the style of the LaunchScreen with the splash ad screen.

LaunchScreen.storyboard Setup

  1. Open LaunchScreen.storyboard and set the background color to match the splash ad screen
  2. Place the app logo in the center (matching the logo position of the splash ad)
  3. Verify that UILaunchStoryboardName is set to LaunchScreen in Info.plist
Info.plist
When the background color and logo position of the LaunchScreen match the splash ad screen, a smooth transition is possible at app launch.

Method 2: Using AdropSplashAdView

Use this when you want to compose a custom splash screen.
When using AdropSplashAdView, you must implement AdropSplashAdViewDelegate. The onAdClose(impressed:) method is required.

Method 3: SwiftUI Implementation

How to implement splash ads in a SwiftUI app.

SwiftUI Wrapper

Using in SwiftUI App


Delegate Methods

AdropSplashAdDelegate

Delegate for using AdropSplashAd.

AdropSplashAdViewDelegate

Delegate for using AdropSplashAdView.

Closure Callbacks

As an alternative to delegates, you can use closure-based callbacks on AdropSplashAd.
If both a delegate and closures are set, both will be called.

The impressed Parameter

The impressed parameter in the onAdClose(_:impressed:) method indicates whether the ad was actually displayed to the user.

When impressed is false

  • Ad load failure
  • Network error
  • User skipped before seeing the ad
  • No ad inventory

Best Practices

1. Appropriate Timer Settings

Splash ads should not be displayed too short or too long.

2. Optimize Logo Image

Prepare the app logo in an appropriate size to minimize loading time.

3. Handle Failures

Ensure the app starts normally even when ad loading fails.

4. Smooth Screen Transitions

Use natural animations when transitioning to the main screen.

5. Separate Test and Production Environments

Test with separate development and production environments.

Complete SceneDelegate Example


Testing

Test Unit ID

Use the test unit ID during development.
Make sure to use the actual unit ID created in the Ad Control console for production releases. No ad revenue is generated with test unit IDs.

Debugging

Check ad events with logs.

Troubleshooting

  • Verify window.rootViewController is set correctly
  • Check if SceneDelegate is enabled (Info.plist)
  • Ensure SDK initialization is complete
  • Check network connection
  • Verify the unit ID is correct
  • Confirm production: false setting in test environment
  • Check onAdFailedToReceive error code
  • Verify onAdClose(_:impressed:) delegate is implemented
  • Ensure screen transition code runs on main thread
  • Verify AdropSplashAdViewDelegate is implemented
  • Check splashAdView.delegate = self is set
  • onAdClose(impressed:) method must be implemented

Next Steps

Interstitial Ads

Display interstitial ads during screen transitions

Banner Ads

Implement banner ads

Native Ads

Custom design native ads

Rewarded Ads

Provide user rewards