Offerwall Migration Guide
Transition from ironSource to Tapjoy by following the Offerwall Migration Guide.
Read time 2 minutesLast updated 3 hours ago
- Integrate the Unity Offerwall adapter. You can add this to your project by using the ironSource mediation manager window.
- Add the Offerwall Unity Plugin. This will allow you to access Offerwall SDK methods from your C# code.
TJPluginDependencies
<dependencies> <androidPackages> <repositories> <repository>https://sdk.tapjoy.com</repository> </repositories> <androidPackage spec="com.tapjoy:tapjoy-android-unitybridge:12.11.1@aar"/> </androidPackages> </dependencies>
- Call Offerwall SDK functions directly. This is what we need to do to display the Tapjoy Offerwall. First, we need to import Tapjoy into your class:
import TapjoyUnity
- Initialise the Offerwall SDK. You will receive a callback when this succeeds (or fails) and you do not need to make any Offerwall SDK calls until you have received the success callback.
#if UNITY_ANDROID Tapjoy.Connect("your_android_sdk_key"); #elif UNITY_IOS Tapjoy.Connect("your_ios_sdk_key"); #endif
- Create a placement object and a listener (more on the listener in step 5). A placement is something you configure on the Offerwall dashboard and it will contain your Offerwall content card. In this example we are assuming you have named your placement Offerwall. In reality you can name it whatever you want but the name you use here in your code must match the dashboard.
TJPlacement placement = TJPlacement.CreatePlacement("Offerwall");
- Request your placement. With this call we are loading the placement so it is ready when you choose to display it. An Offerwall placement should load quickly, but it’s best call this in advance of when you think you will display the Offerwall.
placement.requestContent();
- We offer a range of callbacks that you can implement.
Some of these can replace the ironSource callbacks you might have already implemented. You can see the corresponding callbacks in the table below so that you can easily move any custom logic into the appropriate Tapjoy callbacks:TJPlacement.OnRequestSuccess += HandlePlacementRequestSuccess; TJPlacement.OnRequestFailure += HandlePlacementRequestFailure; TJPlacement.OnContentReady += HandlePlacementContentReady; TJPlacement.OnContentShow += HandlePlacementContentShow; TJPlacement.OnContentDismiss += HandlePlacementContentDismiss;
ironSource Callback | Tapjoy Callback |
---|---|
onOfferwallClosedEvent | OnContentDismiss |
onOfferwallOpenedEvent | OnContentShow |
onOfferwallAvailableEvent | OnContentReady |
OnRequestSuccess
OnContentReady
- To display your Offerwall placement, check the content is ready, and then call :
showContent
This will replace your existing ironSource call:if (placement.IsContentReady()) { placement.ShowContent(); }
IronSource.Agent.showOfferwall();
-
When the user has dismissed the Offerwall you must request the content again. You cannot show a placement multiple times. We would recommend that you request the placement in the callback so that it is ready to display again the next time a user requests it.
OnContentDismiss
- You can now remove any remaining ironSource Offerwall code.
Privacy
If you are using Unity LevelPlay, you can use LevelPlay APIs to share with Tapjoy the following privacy flags:- GDPR consent.
- Opt-out of sale or share of personal information under US state privacy laws.
- Flagging specific end users as children. Note that if your app is primarily directed to children under COPPA you must flag all end users as children.