Initialize Gameball Customer Profile
Show your customer's profile including all details and progress on your Android app.
Last updated
Show your customer's profile including all details and progress on your Android app.
Last updated
Showing the Gameball widget on your mobile application is slightly different than showing it on the website. You have two options; first, if you want to design your customer interface, you will use our set of REST APIs. To know more information, you can use the 👑. The other option as this section elaborates, is through using our Android SDK.
Using the SDK, you can open the Gameball customer profile with the magic of a press of button in your app, programmatically when someone does a specific action, or from a persistent button (ex: ) that sits over your app’s UI.
When you trigger the Gameball customer profile, your customer is presented with a default screen that is configurable inside Gameball to change the look and feel of it.
From there, your customer can check their progress across different Gameball programs as per your configurations.
To show the Gameball customer profile that contains their details, available reward campaigns, and the leaderboard use showProfile() SDK method.
The below is description of show customer profile parameters
activity Activity
Required
Current activity instance holding the GameballApp which will be used in showing the customer's profile.
customerId string
Required
Unique identifier for the customer that you can reference across the customer’s whole lifetime. Could be a database ID, random string, email or anything that uniquely identifies the customer.
openDetail string
Optional
Specify if you want the widget to open on a specific view.
hideNavigation Boolean
Optional
Set to true to stop widget navigation otherwise leave as null
changeLanguage(String language)
Use changeLaguage
SDK method to change the widget language. The language provided should be as per configured languages in your account. If not provided the Gameball profile widget will be shown with your account default language
Example: "en"
, "fr"
.
To register your customers with Gameball, use registerCustomer
method which can be used to create or update the customer details at Gameball. Ideally, it is called when your login or register network call is successful.
activity Activity
Deprecated
Required
Current activity instance holding the GameballApp which will be used in showing the customer's profile.
intent Intent
Deprecated
Required
An intent instance that will be used in combination with the Activity to detect the referral code from the dynamic link.
customerId string
Required
Unique identifier for the customer that you can reference across the customer’s whole lifetime. Could be a database ID, random string, email or anything that uniquely identifies the customer.
customerEmail string
Optional
Customer's unique Email address.
customerMobilestring
Optional
Customer's unique Mobile number.
customerAttributes object
Optional
Additional customer-specific attributes. Includes attributes such as the customer’s name, contact details, and purchase history.
referralCode string
Optional
Customer's referree's referral code
isGuest boolean
Optional
Flag indicating the customer is guest or not (if null, isGuest is set to false by default)
callback function
Optional
Callback is used for providing the developer with the response status and payload.
Choose an Unchangeable Customer ID
Gameball user profile gets created using the customerId
. It is highly recommended to have the unique ID as an identifier that would NEVER be changed. If this unique ID changes for a given customer, you risk losing all original data for that customer and hence losing their points and rewards on Gameball. Accordingly, it is NOT recommended to use the email address or the mobile number as the unique ID as both can be changed by the user at anytime.
Note that if you set a Preferred Language, it will override the language value provided in the init method. If neither were provided, the device's default locale will be used.
The previous example will return an object of CustomerAttributes with the configured attributes.
Using the previously created GameballApp instance or by creating a new one, call the RegisterCustomer() method as shown below
Deprecated Register Customer overloads
Due to the deprecation of Firebase Dynamic Links in the old manner, we've updated the usage approach. If you still need to use the old method, you'll have to use the alternative handleFirebaseDynamicLink
method to retrieve the referral code as before.
handleFirebaseDynamicLink method
Every time the SDK is initialized with a new customerId, the customer profile is created or updated on Gameball side. You may consider enriching your Gameball customer profile with attributes that are not available to the UI by using server side
You can find the complete list of Customer Attributes , if its not included in the CustomerAttributes builder you can add them as Key/Value pairs using withAdditionalAtribute builder method and it will automatically added upon request.