willpassidomo
released this
Core
Uploading Behavior
- Messages/Events are grouped uploaded in Batches either when the "upload loop" executes, or
MParticle#upload()
is invoked and are limited to 100 entries each. Previously, we would only upload 1 Batch per loop/invocation, but this caused issues when an application was uploading more than 100 events between each time uploads were processed and may have attributed to events getting lost if the message queue grew indefinitely. - This release changes that behavior so that, every time the "upload loop" executes or
MParticle#upload()
is invoked, we will create and upload as many Batches until the message queue is cleared. This means if there are 750 events waiting to be uploaded, we will create and upload 8 Batches in the background, sequentially.
Bug (Batches with incorrect DeviceInfo/ApplicationInfo)
- We discovered a bug that resulted in batches getting uploaded with DeviceInfo and ApplicationInfo from the current Session rather than the Session generated within. This bug occurred when a Session ended and a new one started with more than 100 events/messages remaining in the queue from the previous Session. In this case, we would process the first 100 messages into an upload batch with the corresponding Session's Application and Device Info, then delete the old Session object in the belief that we did not need it to generate further batches. When the next buffer of events from the previous Session was processed, we would be unable to fetch the proper old Session object, so we'd fall back on the current Session's DeviceInfo and Application.
Misc
- A number of updates for our internal Instrumented Testing suite which will increase reliability
Kits
- update Kits to latest versions
Assets
2
willpassidomo
released this
Core
- Add public method
Session.getStartTime()
which will return the start time of the current Session. The currentSession
object is accessible viaMParticle.getInstance().getCurrentSession()
Assets
2
willpassidomo
released this
- Update Kit dependencies
- Fix Branch Kit Duplicate Initialization bug
Assets
2
willpassidomo
released this
Minor bugfixes
Assets
2
willpassidomo
released this
Kits
Update Branch: Fix "Duplicate Inititalization" bug
Update Clevertap
Update Kochava
Assets
2
willpassidomo
released this
[BREAKING] AndroidX
Migrate from the Android Support Libraries to the Jetpack (AndroidX) Libraries.
Applications are required to migrate to Android X before using this version. For more info, see
Migrating to AndroidX
Core
- Add functionality for configurable event and identity blocking for kits based on Data Plan versions
Assets
2
willpassidomo
released this
Core
- Fix
uploadInterval
issue. The MParticle SDK allows configuration of theuploadInterval
setting viaMParticleOptions
and through static XML properties. Recently we identified a bug where, during the course of the SDK running,uploadInterval
may have been reset to the default value when we attempted to parse the XML configuration.
The root cause of this bug was that we were inadvertently providing a default/fallback value when we queried the XML configuration for uploadInterval. When this query returned it appeared as though there was a client-provided value present, which we would apply in place of the value contained in MParticleOptions. The default value that the SDK would revert to is 600 seconds