Follow these steps to automatically integrate your Android app with Localytics. This approach is only supported by Ice Cream Sandwich (Android 4.0, API level 14) and later.
import com.localytics.android.*;
<application android:name=".MyApplication" android:icon="@drawable/ic_launcher" android:label="@string/app_name">
public class MyApplication extends Application
{
@Override
public void onCreate()
{
super.onCreate();
// Register LocalyticsActivityLifecycleCallbacks
registerActivityLifecycleCallbacks(
new LocalyticsActivityLifecycleCallbacks(this));
}
}
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// If you're using Localytics Push Messaging
Localytics.registerPush("YOUR_PROJECT_NUMBER");
// Activity Creation Code
}
@Override
protected void onNewIntent(Intent intent)
{
super.onNewIntent(intent);
setIntent(intent);
}
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.WAKE_LOCK" /> // optional, but highly recommended
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<permission android:name="YOUR.PACKAGE.NAME.permission.C2D_MESSAGE"
android:protectionLevel="signature" />
<uses-permission android:name="YOUR.PACKAGE.NAME.permission.C2D_MESSAGE" />
<receiver
android:name="com.localytics.android.PushReceiver"
android:permission="com.google.android.c2dm.permission.SEND" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.REGISTRATION" />
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<category android:name="YOUR.PACKAGE.NAME" />
</intent-filter>
</receiver>
<activity android:name="com.localytics.android.PushTrackingActivity"/>
<receiver android:name="com.localytics.android.ReferralReceiver" android:exported="true">
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>