Releases: sailthru/sailthru-mobile-android-sdk
v2.16.1
v3.0.2
v3.0.1
v3.0.0
v2.x -> v3.0 migration docs can be found here.
GCM
As of 3.0, the Carnival Android SDK is using the latest GcmReceiver
broadcast receiver and will need to be declared in your manifest instead of Carnival's GcmBroadcastReceiver
.
<receiver
android:name="com.google.android.gms.gcm.GcmReceiver"
android:exported="true"
android:permission="com.google.android.c2dm.permission.SEND" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<category android:name="${applicationId}" />
</intent-filter>
</receiver>
Custom Notification Handling
GcmIntentService
has been replaced with the CarnivalMessageListener
using the new onMessageReceived()
method. See the migration docs for more information.
Removed Deprecated Methods
- Removed deprecated
Carnival.startEngine()
methods.- Use
Carnival.startEngine(Context context, String appKey)
.
- Use
- Removed deprecated method
Carnival.getDeviceId()
.- Use
Carnival.getDeviceId(CarnivalHandler<String> carnivalHandler)
.
- Use
- Removed deprecated method
Carnival.logEvent(String source, String value)
.- Use
Carnival.logEvent(EventSource source, String value)
.
- Use
v2.16.0
v2.15.0
Google Project ID
The Google project ID for GCM can now be defined through the Carnival platform. The old startEngine()
calls that take the project ID have been deprecated and replaced with just startEngine(Context context, String appKey)
.
Carnival.startEngine(this, appKey);
Strict Event Source
When forwarding events from analytic frameworks to Carnival the source of the event can be selected from EventSource
.
Carnival.logEvent(EventSource.SOURCE_FLURRY, "eventName");
Default Notification Icon
If you do not set a notification icon for Carnival to use, it will now use the application's icon by default instead of the sys-stat-warning
icon.
Notification Collapsing
Previously if a new push notification came in it would collapse with any existing notifications already in the system tray, effectively replacing it. Now when a new notification comes in it will not replace the existing one. The collapsing behaviour can be controlled by setting your own notification ID when publishing your own notifications in GcmIntentService
.
v2.14.1
v2.14.0
Disable GeoIP
You can now disable Geo IP Tracking. This means Carnival will not estimate device location based on IP for geo-targeting.
Carnival.setGeoIpTrackingEnabled(boolean enabled);
Bug Fixes
- Fixed an issue with device attributes not being removed correctly.