Skip to content

Releases: mixpanel/mixpanel-android

Id management improvements

31 Jan 14:30
Compare
Choose a tag to compare

Pass flag to backend indicating when $distinct_id might have been set to a pre-existing $distinct_id value instead of a generated UUID (used when resolving aliases)

Option to disable exception handler

26 Nov 19:48
Compare
Choose a tag to compare

You can now decide whether you want Mixpanel to report App Crashed events or not. Add the following meta-tag to your AndroidManifest.xml if you want to disable our exception handler:

<meta-data android:name="com.mixpanel.android.MPConfig.DisableExceptionHandler" android:value="true" />

Send device_id and user_id with event/people updates

18 Oct 20:20
Compare
Choose a tag to compare
  • Events will have properties $user_id which is identified user and $device_id
    which is how anonymous events are tracked as before identify was called.
  • People updates will also contain fields $user_id and $device_id.

Bug fixes

09 Oct 00:15
Compare
Choose a tag to compare

Fixes

  • Preventing NullPointerException in Pathfinder (#558)
  • Remove potential deadlock (#566)

Braze integration support

24 Jul 15:15
Compare
Choose a tag to compare
v5.4.1

New release: 5.4.1

GDPR support

20 Apr 18:31
Compare
Choose a tag to compare

Mixpanel helps you to be GDPR compliant. You can now disable and enable tracking at runtime by using new APIs we have written for you:

MixpanelAPI.getInstance(context, "TOKEN").optOutTracking()
  • Removes any PII from the device and stops the SDK from tracking - See doc.
MixpanelAPI.getInstance(context, "TOKEN").optInTracking()
  • Use this method to opt-in an already opted-out user from tracking. See doc.
MixpanelAPI.getInstance(context, "TOKEN").hasOptedOutTracking()
  • Returns true if the user has opted out from tracking.

You can also initialize the SDK specifying a default tracking behavior (e.g do not track until optInTracking() is called): See doc

MixpanelAPI mixpanelAPI = MixpanelAPI.getInstance(context, "TOKEN", true);

Release v5.3.1

11 Apr 00:11
Compare
Choose a tag to compare

Fixes

  • Prevent double tracking for some experiments
  • Prevent tweaks declaration before they have been explicitly declared in code. Fixes #531
  • Fix in-app notification crash #516

Improvements:

  • Tweaks are cleared after calling reset() now.
  • Added logic to prevent dup events at ingestion time
  • Apply all editor changes at once when connected to Mixpanel UI builder
  • Increase data expiration max time value

Change Mixpanel endpoints at runtime

21 Feb 02:16
Compare
Choose a tag to compare

You can now change Mixpanel endpoints at runtime by using the following APIs:

MPConfig.getInstance(this).setEventsEndpoint("https://myapp.company.com/trackendpoint/");
MPConfig.getInstance(this).setPeopleEndpoint("https://myapp.company.com/peopleendpoint/");
MPConfig.getInstance(this).setDecideEndpoint("https://myapp.company.com/decidepoint/");

If you wish to restore Mixpanel values you can use the following APIs:

MPConfig.getInstance(this).setMixpanelEventsEndpoint();
MPConfig.getInstance(this).setMixpanelPeopleEndpoint();
MPConfig.getInstance(this).setMixpanelDecideEndpoint();

(*) Remember that if you just need to override our endpoint always, you are safe by keep using the following meta-tags in your AndroidManifest.xml

<meta-data android:name="com.mixpanel.android.MPConfig.EventsEndpoint"
            android:value="https://myapp.company.com/trackendpoint/" />
<meta-data android:name="com.mixpanel.android.MPConfig.PeopleEndpoint"
            android:value="https://myapp.company.com/peopleendpoint/" />
<meta-data android:name="com.mixpanel.android.MPConfig.DecideEndpoint"
            android:value="https://myapp.company.com/decidepoint/" />

Fix state loss transaction in-app fragment

24 Jan 01:01
Compare
Choose a tag to compare
  • Fixes IllegalStateException when removing a mini in-app notification (#516)

Handle null properties and remove code

04 Jan 19:45
Compare
Choose a tag to compare