App Analytics SDK This page describes the integration of the MediaMelon App Analytics SDK
Prerequisites
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 to SampleApp/appanalytics-release.aar
Add network permissions to
app/src/main/AndroidManifest.xml
Copy <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
Copy 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 );
}
}
Note:
you can rename MyApplication.java
according to your application
Now you need to mention in your MyApplication.java
AndroidManifest.xml
Copy < application
...
android : name = ".MyApplication"
...
</ application >
Step 3: Custom Data & Referral Data
Copy //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
Copy HashMap < String , Object > screenData = new HashMap < String , Object >()
screenData . put ( "KEY" , "VALUE" )
MMIntegrationWrapper . reportScreenView ( "EVENT_NAME" , screenData)
Copy HashMap < String , Object > eventData = new HashMap < String , Object >()
eventData . put ( "KEY" , "VALUE" )
MMIntegrationWrapper . reportEvent ( "EVENT_NAME" , eventData)
Copy MMIntegrationWrapper . reportAppState ( "APP_STATE" )
Copy HashMap < String , Object > errorData = new HashMap < String , Object >()
errorData . put ( "KEY" , "VALUE" )
MMIntegrationWrapper . reportAppError ( "APP_ERROR" , errorData)
Copy HashMap < String , Object > videoData = new HashMap < String , Object >()
videoData . put ( "KEY" , "VALUE" )
MMIntegrationWrapper . reportVideoState ( "VIDEO_STATE" , videoData)
Copy HashMap < String , Object > interruptionData = new HashMap < String , Object >()
interruptionData . put ( "KEY" , "VALUE" )
MMIntegrationWrapper . reportInterruption ( "INTERRUTION_TYPE" , interruptionData)
Copy HashMap < String , Object > purchaseData = new HashMap < String , Object >()
purchaseData . put ( "KEY" , "VALUE" )
MMIntegrationWrapper . reportPurchase ( "PURCHASE_TYPE" , purchaseData)
Copy 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
Copy MMIntegrationWrapper . release ( true );