App Analytics SDK
This page describes the integration of the MediaMelon App Analytics SDK
Prerequisites
Android Sample App
MediaMelon SmartSight SDK
appanalytics-release.aar
MediaMelon-assigned Customer ID
Step 1: Set up the build environment
Copy
appanalytics-release.aar
provided with the release package toSampleApp/appanalytics-release.aar
Add network permissions to
app/src/main/AndroidManifest.xml
<uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
Step 2: Integrate MediaMelon SDK Code to SampleApp
The application must register the MediaMelon SDK and provide app information once when the application launches. Please note that values provided in this integration step persist across app sessions.
you need to create Application class MyApplication.java
import android.app.Application;
import java.util.HashMap;
import com.mediamelon.appanalytics.MMIntegrationWrapper;
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
....
MMIntegrationWrapper.getInstance(this).initialize("CUTOMER_ID" , "APP_NAME" , "APP_VERSION");
HashMap<String , Object> userInfoCustomData = new HashMap<String , Object>();
userInfoCustomData.put("KEY" , "VALUE");
MMIntegrationWrapper.reportSubscriberInfo("SUBSCRIBER_ID","SUBSCRIBER_TYPE","SUBSCRIBER_TAG","PROFILE_ID",userInfoCustomData);
...
}
@Override
public void onTerminate() {
super.onTerminate();
MMIntegrationWrapper.release(true);
}
}
Now you need to mention in your MyApplication.java
AndroidManifest.xml
<application
...
android:name=".MyApplication"
...
</application>
Step 3: Custom Data & Referral Data
//Report Referral data
HashMap<String,Object> referralCustomData = new HashMap<String,Object>()
referralCustomData.put("REFERAl_KEY", "R_VALUE");
MMIntegrationWrapper.reportReferralInfo("REFERRAL_ID",referralCustomData);
// Report custom data
HashMap<String,Object> customData = new HashMap<String,Object>()
customData.put("KEY","VALUE")
MMIntegrationWrapper.reportCustomData("EVENT_NAME",customData)
Step 4 : User Actions
HashMap<String,Object> screenData = new HashMap<String,Object>()
screenData.put("KEY","VALUE")
MMIntegrationWrapper.reportScreenView("EVENT_NAME",screenData)
HashMap<String,Object> eventData = new HashMap<String,Object>()
eventData.put("KEY","VALUE")
MMIntegrationWrapper.reportEvent("EVENT_NAME",eventData)
MMIntegrationWrapper.reportAppState("APP_STATE")
HashMap<String,Object> errorData = new HashMap<String,Object>()
errorData.put("KEY","VALUE")
MMIntegrationWrapper.reportAppError("APP_ERROR" , errorData)
HashMap<String,Object> videoData = new HashMap<String,Object>()
videoData.put("KEY","VALUE")
MMIntegrationWrapper.reportVideoState("VIDEO_STATE" , videoData)
HashMap<String,Object> interruptionData = new HashMap<String,Object>()
interruptionData.put("KEY","VALUE")
MMIntegrationWrapper.reportInterruption("INTERRUTION_TYPE" , interruptionData)
HashMap<String,Object> purchaseData = new HashMap<String,Object>()
purchaseData.put("KEY","VALUE")
MMIntegrationWrapper.reportPurchase("PURCHASE_TYPE" , purchaseData)
HashMap<String,Object> subscriptionData = new HashMap<String,Object>()
subscriptionData.put("KEY","VALUE")
MMIntegrationWrapper.reportSubcription("SUBSCRIPTION_TYPE" , subscriptionData)
Step 4: Report Ended State to the SDK
MMIntegrationWrapper.release(true);
Variable
Description
CUSTOMER_ID
String containing your MediaMelon-assigned Customer ID.
SUBSCRIBER_ID
String containing your subscriber’s ID. If you do not use subscriber IDs, enter null
SUBSCRIBER_TYPE
String containing the subscriber type (e.g. “Free”, “Paid”). If you do not use subscriber types, enter null
SUBSCRIBER_TAG
String containing an additional subscriber-specific information. This is sent in clear (not hashed) to SmartSight and it is advised to not send sensitive information in this field.
PROFILE_ID
...
REFERRAL_ID
A unique referral id
Last updated
Was this helpful?