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); } }