Prerequisites
Do iOS Get Started until finishing step 3.
Step summary
Add the initialization code.
Add the ad wrapper views in your app.
Follow our ad format guides for their implementation.
Test everything is working.
Change everything to production code.
Your app is now prepared for monetization with us.
Initialize the SDK
We require the SDK to be initialized only once as early as possible so for this purpose using the UIApplicationDelegate’s didFinishLaunchingWithOptions method or the first UIViewController’s viewDidLoad method is recomended.
Override the didFinishLaunchingWithOptions
delegate method inside your UIApplicationDelegate
class.
import UIKit import R89SDK @main class AppDelegate: UIResponder, UIApplicationDelegate { func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { // This is for testing purposes, remove it on prod R89SDK.shared.setLogLevel(level: LogLevels.debug) // This is for testing purposes, remove it on prod R89SDK.shared.setDebug() // This is for testing purposes, remove it on prod // publisherId and appId are for testing purposes, remove it on prod R89SDK.shared.initialize( publisherId: "TestRefinery89ID", appId: "TestDemoApp", singleLine: false, publisherInitializationEvents: nil ) return true } }
Your publisherId
and appId
will be provided to you during onboarding process by email, you can also retrieve them from the web interface after login.
This appID
is not the same GADApplicationIdentifier
provided in the Info.plist in previous steps.
Add wrappers to your Views
Wrappers are the UIView
container inside which the ads will show. You need to add as many ad slots or ad places as you desire.
You can add the wrappers using XCode’s UI Builder or programmatically, for more see the iOS Creating a wrapper.
Follow our Ad Formats guides.
Go into production
Remove the methods
R89SDK.shared.setDebug()
.Change the
GADApplicationIdentifier
in theinfo.plist
for the production one.Change the
appId
andpublisherId
in the initialization method for the production ones.Change the
r89ConfigId
in the formats for the production ones.it’s also recommended to remove
R89SDK.shared.setLogLevel(level: LogLevels.debug)
but not needed.
How does it work?
We fetch all ad unit configurations from our Database and you simply need to place the ad units using the RefineryAdFactory
and the r89ConfigurationIDs
we provide you. Incorporate them into the desired views.
Check iOS - Ad Formats to see how each format is implemented.