| For Developers / Sample applications | |
A sample automatically instrumented Android application as well as a manually instrumented Android app. Note that this code assumes a button is created with an id named TestButton.
SkeletonApplication.java
package com.Localytics.SampleSkeleton;
import android.app.Application;
import com.localytics.android.Localytics;
import com.localytics.android.LocalyticsActivityLifecycleCallbacks;
public class SkeletonApplication extends Application
{
@Override
public void onCreate()
{
super.onCreate();
Localytics.setLoggingEnabled(true);
registerActivityLifecycleCallbacks(new LocalyticsActivityLifecycleCallbacks(this));
Localytics.setPushDisabled(false);
}
}
SkeletonActivity.java
package com.Localytics.SampleSkeleton;
import android.app.Activity;
import android.os.Bundle;
import android.widget.Button;
import android.view.View;
import android.view.View.OnClickListener;
import com.Localytics.android.*;
public class SkeletonActivity extends FragmentActivity
{
private final static String PROJECT_NUMBER_FOR_PUSH ="PROJECT_NUMBER_GENERATED_ONLINE";
private final static String EVENT_TEST_BUTTON = "Test Button";
private Button testButton;
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Localytics.registerPush("PROJECT_NUMBER_FOR_PUSH"); // Only needed if using Localytics Push
// This demo assumes a button called TestButton has been defined
// in the main XML layout.
this.testButton = (Button)findViewById(R.id.TestButton);
this.testButton.setOnClickListener(new OnClickListener()
{
public void onClick(View v)
{
Localytics.tagEvent(SkeletonView.EVENT_TEST_BUTTON);
}
});
}
public void onNewIntent(Intent intent)
{
super.onNewIntent(intent);
setIntent(intent);
}
}
SkeletonApplication.java
package com.Localytics.SampleSkeleton;
import android.app.Application;
import com.localytics.android.Localytics;
import com.localytics.android.LocalyticsActivityLifecycleCallbacks;
public class SkeletonApplication extends Application
{
@Override
public void onCreate()
{
super.onCreate();
Localytics.setLoggingEnabled(true);
Localytics.integrate(this);
Localytics.setPushDisabled(false);
}
}
SkeletonView.java
package com.Localytics.SampleSkeleton;
import android.app.Activity;
import android.os.Bundle;
import android.widget.Button;
import android.view.View;
import android.view.View.OnClickListener;
import com.Localytics.android.*;
public class SkeletonView extends FragmentActivity
{
private final static String PROJECT_NUMBER_FOR_PUSH ="PROJECT_NUMBER_GENERATED_ONLINE";
private final static String EVENT_TEST_BUTTON = "Test Button";
private Button testButton;
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Localytics.registerPush("PROJECT_NUMBER_FOR_PUSH"); // Only needed if using Localytics Push
// This demo assumes a button called TestButton has been defined
// in the main XML layout.
this.testButton = (Button)findViewById(R.id.TestButton);
this.testButton.setOnClickListener(new OnClickListener()
{
public void onClick(View v)
{
Localytics.tagEvent(SkeletonView.EVENT_TEST_BUTTON);
}
});
}
public void onResume()
{
super.onResume();
Localytics.openSession();
Localytics.upload();
if (activity instanceof FragmentActivity)
{
Localytics.setInAppMessageDisplayActivity((FragmentActivity) activity);
}
Localytics.handleTestMode(activity.getIntent());
}
public void onPause()
{
if (activity instanceof FragmentActivity)
{
Localytics.dismissCurrentInAppMessage();
Localytics.clearInAppMessageDisplayActivity();
}
Localytics.closeSession();
Localytics.upload();
super.onPause();
}
public void onNewIntent(Intent intent)
{
super.onNewIntent(intent);
setIntent(intent);
}
}