Gamize referral feature is implemented using firebase dynamic links.
1. Prerequisites
- Client App should be integrated with Firebase. Refer Firebase Integration Documentation
- Firebase dynamic link url prefix. Refer Firebase Dynamic Link Documentation
- Web redirection link : This is the url where referral link will redirect if opened in desktop web browser. This can be HTTP or HTTPS but cannot be dyanmic link.
2. Gamize Dashboard Firebase Integration
Follow the following steps for Gamize Dashboard Firebase Integration:
Step1. Goto Profile section by clicking on the profile icon on top-right corner.
Step2. Select "Integration" option on the menu.
Step3. Select "Firebase" Tab.
Step4. Enter Firebase dynamic link url prefix.
Step5. Enter Web redirection link.
Step6. Click "Save" button.
3. Add intent filter for deeplink
In AndroidManifest.xml, Add intent filter to the activity that handles deeplinks.
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data
android:host="firebase_dynamic_link_url_prefix"
android:scheme="https"/>
</intent-filter>
4. Receiving Deeplink
Firebase.dynamicLinks
.getDynamicLink(intent)
.addOnSuccessListener(this) { pendingDynamicLinkData: PendingDynamicLinkData? ->
pendingDynamicLinkData?.apply {
if (utmParameters.getString("utm_medium").equals("gamize-sdk")) {
//If "utm_medium" is "gamize-sdk" then user is referred by Gamize Sdk
val referralCode = utmParameters.getString("utm_source")
}
5. Referral User Registration on Gamize
Client app needs to register user on Gamize once their registration process is completed.
Refer userRegistration