Initialization
Integrating the Tyrads offerwall functionality into your application is a straightforward process that involves a few key steps. By following these integration steps, you can seamlessly incorporate the offerwall feature, enhancing user engagement and potentially generating revenue for your application.
1. Initialization
SDK Initialization best practices:
Initiate early: It's advisable to initialize the SDK promptly after your app launches to ensure that all Tyr SDK functionalities are accessible when needed.
Initiate post-app authentication: Re-initiate the SDK with current user details immediately after your user signs up or signs in to the app to update the
userId
.Initiate periodically: To optimize user experience, we strongly suggest invoking this method each time your app is brought to the forefront. This shouldn't impact your app's performance noticeably.
This step initializes the Tyrads SDK within your application. You need to provide the API key and API secret obtained from the Tyrads platform. This allows your app to communicate securely with Tyrads' servers.
1.1 Advanced Practices for intialization for personalized rewards
To maximize the value to the user sending us more data about the user and where they came from allow us to customize the reward experience. This can be used to provide feedback of quality of users aswell as customize the earnings journey of different segments of users.
To maximize the value of our Tyr SDK please follow the advanced options for intialization. This will allow us to personalize the rewards for the user event further and maximize the earnings for you as publisher.
Sending User Segments / User Info
2. User Login
Upon initializing the SDK, the mandatory step is to log in the user. However, passing a user ID is optional and is only necessary when the publisher operates its own user system. This login process ensures that user interactions with the offerwall are accurately tracked and attributed within the application.
The generated user ID from the SDK is based on the device identifier (GAID/OAID/IDFA)
If your app user resets the device identifier, your user will lose the progress data
If the SDK can't access the device identifier, it will generate its own device identifier and store it in the app storage. If this is the case, your app user will lose the progress data when the user uninstalls the app
If you send us your userId within userId field from your backened we will save this and even if the user changes their device ID we will keep their progress.
3. Show Offerwall
Once the SDK is initialized and the user is logged in (if applicable), you can display the offerwall to the user. This typically involves calling a function provided by the Tyrads SDK, such as showOffers, passing in the context of your application. The offerwall is where users can engage with various offers, advertisements, or promotions provided by Tyrads, potentially earning rewards or incentives in the process.
Deeplinking Routes
Min SDK version required: v1.1.4
The Tyrads SDK supports deeplinking to specific sections of the offerwall. When initializing or interacting with the SDK, you can specify a route to open a particular page. For campaign-specific routes, you'll need to provide the campaignID as well.
Available routes and their usage:
campaigns
- opens the Campaigns Pagecampaigns-activated
- opens the Activated Campaigns Pagecampaign-details
- opens the Campaign Details Page (requires campaignID)campaign-tickets
- opens the Campaign Tickets Page (requires campaignID)
Premium Offers
This method returns a pre-built Flutter widget that displays a list of top offers. It provides several customization options to control the widget's appearance and behavior.
Parameters:
showMore
(bool, optional): Determines whether a "Show More" button is displayed at the bottom of the widget. This button typically navigates the user to a full screen of available offers. Defaults totrue
.showMyOffers
(bool, optional): Determines whether a section displaying the user's current/claimed offers is shown within the widget. Defaults totrue
.showMyOffersEmptyView
(bool, optional): IfshowMyOffers
is true, this determines whether a special view is displayed when the user has no current offers. This view might include a prompt to explore available offers. Defaults tofalse
.widgetStyle
(int, optional): An integer value that selects a pre-defined style for the widget. Different style values might change the widget's layout, color scheme, or other visual aspects. Defaults to1
.
Available Widget Style options
Return Value:
Widget
: A FlutterWidget
(specifically, aTopOffersWidget
) that can be embedded in your application's UI.
Usage Example:
changeLanguage
changeLanguage
This asynchronous method allows you to change the language used by the Tyrads SDK. It updates the SDK's internal locale settings.
Parameters:
languageCode
(String): A string representing the desired language code (e.g., "en" for English, "es" for Spanish, "fr" for French). This should be a valid ISO 639-1 language code.supported Languages
: English (en), Spanish (es), Indonesian (id), Japanese (ja) and Korean (ko)
Usage Example:
Notes:
This method persists the selected language in shared preferences so that it persists between app sessions.
Make sure your application and the Tyrads SDK support the language code you are passing, otherwise english will be set.
This method is asynchronous because it involves writing to shared preferences.
Consider providing a language selection UI in your application that allows users to choose their preferred language if not Sdk itself provides user to select prefered language.
Last updated