package io.evercam.androidapp;
import android.app.Activity;
import android.os.Bundle;
import android.view.Window;
import com.logentries.android.AndroidLogger;
import com.splunk.mint.Mint;
import io.evercam.androidapp.feedback.MixpanelHelper;
import io.evercam.androidapp.utils.Constants;
import io.evercam.androidapp.utils.PropertyReader;
public class ParentActivity extends Activity
{
private PropertyReader propertyReader;
private MixpanelHelper mixpanelHelper;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
getWindow().requestFeature(Window.FEATURE_ACTION_BAR);
propertyReader = new PropertyReader(this);
initBugSense();
mixpanelHelper = new MixpanelHelper(this, propertyReader);
}
@Override
protected void onStart()
{
super.onStart();
if(Constants.isAppTrackingEnabled)
{
if(propertyReader.isPropertyExist(PropertyReader.KEY_SPLUNK_MINT))
{
Mint.startSession(this);
}
}
}
@Override
protected void onStop()
{
super.onStop();
if(Constants.isAppTrackingEnabled)
{
if(propertyReader.isPropertyExist(PropertyReader.KEY_SPLUNK_MINT))
{
Mint.closeSession(this);
}
}
getMixpanel().flush();
}
public PropertyReader getPropertyReader()
{
return propertyReader;
}
/**
* @return the Mixpanel helper class
*/
public MixpanelHelper getMixpanel()
{
mixpanelHelper.registerSuperProperty("Client-Type", "Play-Android");
return mixpanelHelper;
}
private void initBugSense()
{
if(Constants.isAppTrackingEnabled)
{
if(propertyReader.isPropertyExist(PropertyReader.KEY_SPLUNK_MINT))
{
String bugSenseCode = propertyReader.getPropertyStr(PropertyReader
.KEY_SPLUNK_MINT);
Mint.initAndStartSession(this,bugSenseCode);
}
}
}
public static void sendToMint(Exception e)
{
if(Constants.isAppTrackingEnabled)
{
Mint.logException(e);
}
}
public void sendToLogentries(AndroidLogger logger, String message)
{
if(logger != null)
{
logger.info(message);
}
}
public static void sendWithMsgToMint(String messageName, String message, Exception e)
{
Mint.logExceptionMessage(messageName, message, e);
}
}