Historical release notes

These release notes cover content from the previous year back to 2016

2019

December (2019)

Compatible with 19.4 Acoustic Campaign Automation

EnhancementDescription
React Native SDK 3.0.1Bug Fixes:
Updated .js and package.json files to allow the SDK to be built under Windows.

Note: Due to issues building with the latest version of Node.js, Facebook recommends using an earlier version to build on Windows. Our tests used 10.15.1.

Our environment for this release:
react-native: 0.59.9
react-native-cli: 2.0.1
MacOS 10.15.1
Xcode version: 11.2.1
iOS 13.1.2
Android Studio version: 3.3.1 (Windows), 3.5.2 (MacOS)
Gradle version: 4.10.2
Android Gradle Plugin : 3.3.1
Android 10.0.0 (API 29)
Node.js version: 10.17.1 (Windows), 10.15.1 (MacOS)

November (2019)

Compatible with 19.4 Acoustic Campaign Automation

EnhancementDescription
Android SDK 3.8.0A migration guide from 3.7.1.4 to 3.8.0 is available at Upgrading from Android 3.7.1.4 to Android 3.8.0.

Note: We have had at least one report of issues upgrading from previous releases to 3.8.0 when there are old items in the queue. A workaround is available here. This does not affect new installs, only upgrades.

Bug Fixes:
Eliminated reference to removed class FirebaseInstanceIdService.
Fixed example event code in sample app to send correct attribution.
Fixed issue with log iteration time parsing.
Fixed NullPointerException in cognitive location code which triggered background crashes.

Improvements:
Converted SDK and sample app to AndroidX.
Changed packaging to include DemoAar sample app only.
Added the example plugin to the sample app.
Removed GCM references from sample app.
Removed use of wakelocks when reporting metrics.
Improved error handling.
Added API to allow inbox messages to be transformed when received, before being inserted into the database, and after being inserted into the database (see Inbox control API additions for Android).
Added API to allow custom messaging service instead of FCM/GCM.
Improved location events responsiveness when the app is in the background.
Collapsed outdated location events to send only the most recent.
Added support for Android 10.
Updated SDK and sample app package names. With this release, the SDK packages have been renamed. All references to the packages in your code will need to be modified. Please change all references of com.ibm.mce to co.acoustic.mobile.push.

Note: This release contains only the DemoAar sample app. Most customers now use AAR format, and this allows us to focus our sample app testing.

Note: If you use location services, you will need to update AndroidManifest.xml and MceConfig.json.

Our environment for this release:
Android Studio 3.5.1
Gradle 5.4.1
Android Plugin 3.5.0
Android 4.4.2 (API 19), 5.0.0 (API 21), 5.1.1 (API 22), 6.0 (API 23), 7.0.0 (API 24), 7.1.1 (API 25), 8.0.0 (API 26), 8.1.0 (API 27), 9.0 (API 28), 10.0 (API 29)
SQLeet 0.28.0

Note: Testing and support for GCM has been removed in anticipation of Google disabling the service. GCM classes still exist in the SDK, and it may continue to work, but have not been tested. We strongly recommend you move to FCM as soon as possible.

October (2019)

Compatible with 19.4 Acoustic Campaign Automation

EnhancementDescription
iOS SDK 3.8.0Bug Fixes:
Fixed registration problem in simulator if configuration includes “autoInitialize”:false.
Added mailingId field to event with name “messageOpened” and type “inbox”.

Improvements:
Added support for iOS 13 including dark mode, multiple window apps. With the addition of iOS 13 support, support is withdrawn for iOS 10.
Added rudimentary filtering of invalid mailingId values to event API. Values which do not contain a number will be rejected.
Improved user experience for post inbox template message images. Now the inbox opens the message if you click the image on the message list page, but opens the image zoom interface when tapped on the full message view.
Switched to using XCFramework instead of Framework. This requires Xcode 11, but does not require iOS 13. Xcode will automatically adjust the framework search path for XCFrameworks to simplify integration. Refer to Apple’s WDC video for more information about the change, and see Updating your existing project to the new Acoustic frameworks for details about using Apple’s new structure and our new package names.
Replaced UIWebView with WKWebView for iOS 13 compatibility.
Added active tracking to geofence display in Swift sample app.
Improved Custom Action page in Sample app.

Note: With this release, the SDK namespaces have been renamed. All references to the namespaces in your code will need to be modified. IBMMobilePushWatch should change to AcousticMobilePushWatch, IBMMobilePushNotificationService should change to AcousticMobilePushNotification (without the “Service” suffix) and any other references to IBMMobilePush should change to AcousticMobilePush.

Note: iOS 13 changes location permission requests so that users cannot grant “always” permission from within your application. See the Prerequisites section of Configuring the iOS SDK for geofence and beacon integration for more details.

Note: Due to Apple defect FB7017088, multiple window support for push message actions may not function on iOS 13.0 when the app is not running. Our testing shows that this issue appears to have been fixed in iOS 13.1.

Our environment for this release:
Xcode 11.0
MacOS 10.14.6
iOS 11.3.1, 12.4.1, 13.1.2

September (2019)

Compatible with 19.4 Acoustic Campaign Automation

EnhancementDescription
React Native SDK 3.0.0Improvements:
Initial React Native release. The React Native 3.0.0 SDK uses the Android 3.7.1.3.1 SDK and the iOS 3.7.1.4.2 SDK

Our environment for this release:
react-native : 0.60
react-native-cli: 2.0.1

MacOS 10.14.6
Xcode version: 10.2.1
iOS 10.3(32-bit), 11.3.1, 12.4.1

Android Studio version: 3.5
Gradle version: 4.10.2
Android Gradle Plugin : 3.3.1
Android 4.4.2 (API 19), 5.1.1 (API 22), 6.0 (API 23), 7.0 (API 24), 7.1.1 (API 25), 8.0 (API 26), 8.1.0 (API 27), 9.0 (API 28)

August (2019)

Compatible with 19.3 IBM WCA

EnhancementDescription
Android SDK 3.7.1.4Bug Fixes:
Fixed issue with date format when the locale uses non-Arabic digits.
Resolved timestamp issues with non-ASCII numbers (Eastern Arabic, Perso-Arabic, Urdu).

Improvements:
Added optional database encryption for SDK databases.
Improved handling of loglevel parameter in MceConfig.json.
SDK now sends notification to server when it detects that user has enabled/disabled notifications.
Improved geofence and beacon detection (especially on Android 8 and higher). Note that due to changes in Android 8, we recommend that users who need rapid response to geofence/beacon events implement a foreground service.
Improved layout of Android action buttons when button text is long.

Our environment for this release:
Android Studio 3.1.3
Gradle 4.6
Android Plugin 3.2.1
Android 4.4.2 (API 19), 5.1.1 (API 22), 6.0 (API 23), 7.0.0 (API 24), 7.1.1 (API 25), 8.0.0 (API 26), 8.1.0 (API 27), 9.0 (API 28)

Note: Testing and support for GCM has been removed in anticipation of Google disabling the service. GCM classes still exist in the SDK, and it may continue to work, but have not been tested. We strongly recommend you move to FCM as soon as possible.

July (2019)

Compatible with 19.3 IBM WCA Release

EnhancementDescription
Xamarin SDK 3.3.2.5Improvements:
Updated to native iOS SDK 3.7.1.4.
Updated to native Android SDK 3.7.1.3.1.
Simplify action subsystem on Android (see the migration notes for more information).
Added version number of Xamarin plugin to channel attributes to make debugging easier.

Note: Due to a change in Apple binary format and the inclusion of optional libraries, the Apple SDK binary is larger than the previous one on disk. There is no significant change to memory usage on the device.

Our environment for this release:
Xamarin.Mac 5.6.0.25 (d16-0 / 50f75273)
Visual Studio Community 2019 for Mac, Version 8.1.1(build 1624)
Xcode 10.2.1
Android Studio 3.1.3
iOS 10.3 (64-bit – see note), 11.3.1, 12.1.4
Android 4.4.2, 5.1.1, 6.0, 7.0.0, 8.1.0, 9.0

Note: The latest version of Xamarin does not build correctly for 32-bit iOS 10 devices. Builds on earlier versions of Xamarin may work.
iOS SDK 3.7.1.4.1Bug Fixes:
Fixed a problem with background/foreground detection for better session tracking statistics.

Note: This release has corrected a problem with how foreground / background is detected. Because of this, session tracking statistics from previous versions of the SDK may not coincide. Statistics will, however, now be closer to Android statistics for session tracking.

Improvements:
Improved event task queue to avoid excessive event enable/disable events.
Removed deprecated method calls from sample apps.
Removed non-error messages from error log.
Removed warnings from sample app builds.

Our environment for this release:
Xcode 10.2.1
MacOS 10.14.5
iOS 10.0.1, 11.3.1, 12.1.4

June (2019)

Compatible with 19.3 WCA Release

EnhancementDescription
Cordova SDK 3.6.5Bug Fixes:
Eliminated race condition which could cause Cordova build issues on Android.

Improvements:
Updated to native iOS SDK 3.7.1.4.
Updated to native Android SDK 3.7.1.3.1.
Made the sample app modular. Now menus won’t appear if the appropriate plug-ins are not installed.
Removed non-original icons to avoid potential licensing issues.
Added version number of Cordova plugin to channel attributes to make debugging easier.
Added API to allow syncing of in-app messages without inbox plugin.
Redesigned event callback queue for improved reliability on all versions of Android.
Handle actions dynamically, eliminating the need for configuration flag CUSTOM_ACTIONS.
Added custom action example to sample app.

Our environment for this release:
Cordova version: 9.0.0 ([email protected]) Note that due to Cordova plugin compatibility issues, this release requires Cordova 9.x.
Cordova Android plugin version: 8.0.0
Cordova iOS plugin version: 5.0.0
Gradle version: Gradle 5.2.1
Xcode 10.2.1
Android Studio 3.1.3
iOS 10.3 (64-bit), 11.3.1, 12.3.1
Android 4.4.2, 5.0, 5.1.1, 6.0, 7.0, 7.1.1, 8.0, 8.1.0, 9.0

May (2019)

Compatible with 19.2 IBM WCA

EnhancementDescription
Android SDK 3.7.1.3.1Bug Fixes:
Fixed a crash that occurred when users clicked on the blank part of an in-app message.
Fixed a crash that occurred when a very large image (big enough to require cache access) was sent before the cache had been initialized.

Improvements:
Added additional code to work around JobStatus getUid() NullPointerException (OS crash issue) on Android 5.x (Lollipop) and Android 6.x (Marshmallow).

Our environment for this release:
Android Studio 3.1.3
Gradle 4.6
Android Plugin 3.2.1
Android 4.4.2 (API 19), 5.1.1 (API 22), 6.0 (API 23), 7.0.0 (API 24), 7.1.1 (API 25), 8.0.0 (API 26), 8.1.0 (API 27), 9.0 (API 28)

Note: Testing and support for GCM has been removed in anticipation of Google disabling the service. GCM classes still exist in the SDK, and it may continue to work, but have not been tested. We strongly recommend you move to FCM as soon as possible.

April (2019)

Compatible with 19.2 IBM WCA

EnhancementDescription
iOS SDK 3.7.1.4Improvements:
Added databaseEncryption and databaseKeyRotation options to MceConfig.json. Note that using database encryption (now the default) requires that you remove libsqlite3.0.tbd from your app.
Added allowJailbrokenDevices option to MceConfig.json.
Delete URL caches when going to the background for better security.
Improved error handling framework.
Improved config file parsing system.
Improved geofence search algorithm when iOS reports significant location changes less frequently.
Refactored code to support new platform ports better.
Added new custom action test page to sample app.

Note: Due to a change in Apple binary format, this release is roughly three times as large as the last one on disk. There is no significant change to memory usage on the device.

Our environment for this release:
Xcode 10.2.1
MacOS 10.14.4
iOS 10.3 (64-bit), 11.3.1, 12.1.4
Android SDK 3.7.1.3Bug Fixes:
Added check to make sure SD card is mounted before creating image cache there.
Fixed NullPointerException when scheduled job is started by a different thread.
Fixed crash when displaying in-app messages in airplane mode.

Improvements:
Added Carousel plugin.
Added support for setting notification badge count to custom value.
Added retry for inbox/in-app message status updates.

Our environment for this release:
Android Studio 3.1.3
Gradle 4.6
Android Plugin 3.2.1
Android 4.4.2 (API 19), 5.0.2 (API 21), 5.1.1 (API 22), 6.0 (API 23), 7.0.0 (API 24), 7.1.1 (API 25), 8.0.0 (API 26), 8.1.0 (API 27), 9.0 (API 28)

Note: Testing and support for GCM has been removed in anticipation of Google disabling the service. GCM classes still exist in the SDK, and it may continue to work, but have not been tested. We strongly recommend you move to FCM as soon as possible.

March (2019)

Compatible with 19.1 WCA Release

EnhancementDescription
Cordova SDK 3.6.4Bug Fixes:
Set android:allowBackup to false by default in AndroidManifest.xml
Corrected default SERVER_URL when not specified.

Improvements:
Updated Android platform to use Cordova Android plugin 7.1.4 for Java 8 support. Android Platform 7.1.4 is now the recommended Android plugin version.
Updated iOS SDK to support native 3.7.1.3.2 SDK.
Updated Android SDK to support native 3.7.1.2.14 SDK.
Added support for new autoInitialize flag on Android (already supported on iOS).
Added event listeners to callbacks for better foreground/background detection.

Our build environment:
Cordova version: 8.1.2 ([email protected])
Cordova Android plugin version: 7.1.4
Cordova iOS plugin version: 4.4.0
Gradle version : Gradle 5.2.1
Xcode 10.1
Android Studio 3.1.3
iOS 10.3 (64-bit), 11.3.1, 12.1.4
Android 4.4.2, 5.1.1, 6.0, 7.0.0, 8.1.0, 9.0
iOS SDK 3.7.1.3.3Bug Fixes:
Fixed issue where in-app messages can be viewed more than maxViews times in rare circumstances.

Improvements:
Modified “url” handler to open using non-deprecated method when available.

Our build environment for this release:
Xcode 10.1
iOS 10.3 (64-bit), 11.3.1, 12.1.4

February (2019)

Compatible with 19.1 IBM WCA

EnhancementDescription
Android SDK 3.7.1.2.14Bug Fixes:
Fixed inbox video crash on target SDK 28.
Prevented in-app messages from being displayed more than requested if in-app sync occurs after first display.
Fixed problem when changing app key while doing GCM to FCM migration. Note that IBM strongly recommends that you use the same app key for FCM and GCM, rather than creating a new one. See migration instructions for more details, and contact support if you have any questions.

Improvements:
Added additional exception handling code.
Implemented autoInitialize flag. See Configuring the Android SDK “Auto Initialize” feature for more details.
Converted the sample app to use FCM by default. If your project is still using GCM, note that Google has deprecated it and will soon disable it entirely.
Added warning if GCM references are used in an FCM manifest.
Changed sample app package name to com.ibm.wca.samples.android. Note that you will need to update your Google project to use the sample app with the new package name.
Changed MceNotifier to WcaNotifier.
Updated to Android Studio 3.2.1.
Xamarin SDK 3.3.2.4Improvements:
Updated native Android SDK to 3.7.1.2.14.
Updated native iOS SDK to 3.7.1.3.2.
Added support for new autoInitialize flag on Android (already supported on iOS).

Note: If you use the video functions of inbox and in-app plugins on Android P, you must set an additional attribute on the node in AndroidManifest.xml.

Our build environment:
Xamarin versions: Visual Studio Community 2017 for Mac, Version 7.8(build 1624), Xamarin.Mac 5.0.0.0( / b40230c0)
Visual Studio Community 2017 for Mac Version 7.8(build 1624)
Xcode 10.1
Android Studio 3.1.3
iOS 10.3 (64-bit – see note), 11.3.1, 12.1.4
Android 4.4.2, 5.1, 6.0, 7.1.1, 8.1.0, 9.0

Note: The latest version of Xamarin does not build correctly for 32-bit iOS 10 devices. Builds on earlier versions of Xamarin may work.

January (2019)

Compatible with 19.1 IBM WCA Release

EnhancementDescription
iOS SDK 3.7.1.3.2Bug Fixes:
Changed the way action categories are retrieved to support changes introduced in iOS 12.0.1.
Fixed layout issue on iPad sample app in landscape. Refer to the sample app if you have layout issues with the post inbox template.
Added additional checks for null values to prevent SDK crashes.

Improvements:
Implemented split view for iPads in sample app.
Removed Xtify 2.x compatibility code.
Updated JSON parsing to be more resilient to unrecognized date formats.
Added “-ObjC” flag to Other Linker Flags in the sample app to match the Getting Started documentation.
Changed registration procedure to register for APNS before permissions are queried. This requires an update to your app’s registration.

Note: Changes in the Notification Service require that you add MceConfig.json to your Notification Service target. See step 5 of Enabling media attachment and multiple action support for more details. If you are using a configuration object rather than MceConfig.json, see step 2 of Initialize the iOS SDK with a NSDictionary object.

2018

December (2018)

Compatible with 18.4 IBM WCA

EnhancementDescription
Android SDK 3.7.1.2.13Bug Fixes:
Added code to prevent crashes in job subsystem.
Prevent exception if image cache cannot be initialized.
Updated minSdkVersion for back-level platforms.
Fixed security issues.

Improvements:
Commented out showNotification in onLocationEnabled in sample app. The showNotification is useful for debugging but apps should not ship with it.
Updated MceConfig.json to use the same format for baseUrl as on iOS.
Added additional guard code for null DeliveryChannels.
Added additional logging.

November (2018)

Compatible with 18.4 IBM WCA Release

EnhancementDescription
Xamarin SDK 3.3.2.3Bug Fixes:
Fixed issue with Android Context throwing type exception.

Improvements:
Updated sample app to match iOS better.
Improved serviceability of Xamarin SDK.
Updated native Android SDK to 3.7.1.2.11.
Updated native iOS SDK to 3.7.1.3.1.
Android SDK 3.7.1.2.12Improvements:
Detect if jobs are canceled by external code and restart them if needed.
Prevent null pointer exceptions when API is called before registration completes.
Security improvements.

October (2018)

Compatible with 18.3 IBM WCA

EnhancementDescription
Android SDK 3.7.1.2.11Bug Fixes:
Fixed NullPointerException when upgrading from previous releases if old jobs are in queue.
Reset job queue and delivery channel when app key changes.
Prevent excess phone home calls when device is in airplane mode.
Prevent crash due to excess attribute updates when server is in maintenance mode.

Improvements:
Remove unused Xtify 2.x compatibility code.
iOS SDK 3.7.1.3.0Bug Fixes:
Prevented unnecessary re-registration on startup and upgrade from some earlier versions of the SDK.
Disabled file protection for containing directory for database and persist files to solve issues running in the background.
Added code to re-register when phone home returns 404.
Fixed typos.

Improvements:
Added support for iOS 12, including support and examples for app notification settings.
Added support for new watchOS architecture arm64_32.
Added support for Image Carousel Plugin (iOS 12 only).
Added client-side support for sending inbox unread count as badge.
Updated for Xcode 10 compatibility.
Removed unused metricTimeInterval from MceConfig.json. iOS uses a default of 3 minutes due to lack of reliable background processing and this value is not adjustable.
Added new logging options maximumSize and maximumNumberOfLogFiles to MceConfig.json.
Migrated to Swift 4.2.
Switched to new logging system with os_log.
Improved inbox to update only when necessary.
Added iOS 12 settings example to sample apps.
Added example of Date attribute to sample apps.
Changed file/database protection to resolve issues with running in the background.
Eliminated compiler warnings.
iOS SDK 3.7.1.3.1Bug Fixes:
Changed the way action categories are retrieved to support changes introduced in iOS 12.0.1.
Cordova SDK 3.6.3Improvements:
Changed package names to match the native packages.
Updated iOS SDK to support native 3.7.1.3.1 SDK.
Updated Android SDK to support native 3.7.1.2.11 SDK.
Added additional debug information for Cordova clients.
Updated sample app to be closer to iOS native app.
Changed build system to allow Cordova to build on Xcode 10.

September (2018)

Compatible with 18.2 IBM WCA Release

EnhancementDescription
Xamarin SDK 3.3.2.2Bug Fixes:
Moved sample project to correct directory so it compiles out of the box. (This resolves the “missing plugins” error of 3.3.2.1.)
Android SDK 3.7.1.2.9Bug Fixes:
SDK registration updated now triggers an SDK event even if ID/channel do not change.
Fixed problem with sending DateAttributes.
Corrected build.gradle for DemoAar.
Corrected typos in sample app comments in AndroidManifest.xml.
Added procedure to prevent unwanted Android data restores which can cause unexpected behavior.

Improvements:
Added crash log to SDK log.
Reduced alarm wakeups / wakelocks.
SDK will now try to install https provider if not available on Kitkat.
Updated sample app to use new attribute API.
Fixed ClassNotFoundException message for MPactClient when Zebra not in use.

August (2018)

Compatible with 18.2 IBM WCA

EnhancementDescription
Android SDK 3.7.1.2.8Bug Fixes:
Fixed issue where turning LocationManager off via disableLocationSupport() did not stop location services.
Fixed null pointer exception on message received in MceGcmListenerService.
Fixed null pointer exception in WakefulIntentService.onHandleIntent.
Fixed issues with registration on Android M.
Resolved issue with background service crashing on force stop when location is enabled.
Changed attribute delete to use DELETE instead of POST on platforms higher than Kitkat (API 19). Kitkat and below should refer to the second footnote of this document for information about deleting attributes.
Cordova SDK 3.6.1Bug Fixes:
Added support for new Android 3.7.1.0.2-style manifest on Android.

Improvements:
Added support for new Android Notification Channels.
Updated iOS SDK to support native 3.7.1.2.3 SDK.
Updated Android SDK to support native 3.7.1.2.8 SDK.

Note: Cordova 3.6.1 requires changes which prevent it from being used on both GCM and FCM. For that reason, it supports FCM only. Documentation on how to convert back to GCM will be coming soon, but be aware that no testing other than basic push testing has been done on GCM.
Xamarin SDK 3.3.2.1Improvements:
Updated SDK to support iOS native 3.7.1.2.3 SDK.
Updated SDK to support Android native 3.7.1.2.8 SDK.
Added API (changes in MainActivity.cs and AndroidManifest.xml) to support Android notification channels.
Cordova SDK 3.6.2Bug Fixes:
Prevented duplicate in-app messages after uninstall/reinstall.

Improvements:
Separated GCM and FCM out of SDK plugin. It is now possible to use Cordova with either FCM or GCM.

Note: As of 10 October 2018, Cordova did not yet support Xcode 10. Cordova users should continue to use Xcode 9 and will be unable to make use of iOS 12 features until Cordova adds support.

July (2018)

Compatible with 18.2 IBM WCA

EnhancementDescription
Android SDK 3.7.1.2.6Bug Fixes:
Fixed issue where startForegroundService() did not call Service.startForeground().
Fixed null pointer exception on message received in MceGcmListenerService.
Note: Android SDK 3.7.1.2.6 has a known defect. If users force close the app, the background service which scans for beacons/geofences will crash and restart. Because it restarts, users will not experience any loss of function. Developers who are using crash reporting frameworks may see this reported.

June (2018)

Compatible with 18.1 WCA Release

EnhancementDescription
Cordova SDK 3.6.0Bug Fixes:
Added missing inbox open metrics.
Fixed layout issues in the sample app on iPhone X.
Fixed problem with sample app’s in-app test page.

Improvements:
Added support for European Union General Data Protection Regulations (GDPR).
Added clearExpiredMessages API.
Updated iOS SDK to support native 3.7.1.2.2 SDK.
Updated Android SDK to support native 3.7.1.2.3 SDK.
Android SDK 3.7.1.2.4Bug Fixes:
Fix DemoAAR build problems on latest Android Studio.
Change API: getNotificationChannelIs should be getNotificationChannelId.
Fixed minor typos in MceConfig.json.
Fixed excessive wakelocks issue.
SDK now sends onSdkRegistered and onSdkRegistrationChanged when app key changes.
Fixed Crash in com.ibm.mce.sdk.gcm.MceGcmListenerService.onMessageReceived.

Improvements:
Changed metricTimeout to default to 3 minutes to match iOS.
Added initial notification badge support for Android O. (Badge support still requires server changes, which will be available in the future).

Note: Android SDK 3.7.1.2.4 has a known defect. If users force close the app, the background service which scans for beacons/geofences will crash and restart. Because it restarts, users will not experience any loss of function. Developers who are using crash reporting frameworks may see this reported.
iOS SDK 3.7.1.2.3Improvements:
Try to register (if unregistered) when app comes to the foreground. This prevents registration problems in corner cases when network connectivity is poor.
Clean up corrupted location data left by 3.7.1.1 when location was turned off after being enabled.
Add fallback registration task if the SDK has been initialized but has no mobile user ID.

May (2018)

Compatible with 18.1 IBM WCA Release

EnhancementDescription
iOS SDK 3.7.1.2.1Bug Fixes:
Fixed layout issues in the sample app on iPhone X. See changes in MCEInAppMediaTemplate.m, MCEInAppVideoTemplate.m, MCEInAppImageTemplate.m, MCEInAppBannerTemplate.m, MCEInboxActionPlugin.m and their associated XIBs.

Improvements:
Improve efficiency of inbox sync. See the changes in the sample app’s MCEInboxActionPlugin.m.
Added sync call to sample app in-app view controller.
Additional configuration error checking.
Android SDK 3.7.1.2.1Bug Fixes:
Fix phone home scheduling interval issue (wrong units are used if you explicitly specify phoneHomeInterval in MceConfig.json).
Defer phone home when app key changes until after app key has updated.

Improvements:
Additional configuration error checking.
Prevent crash on Android 27 devices with corrupted Timezone information.
Add support for DeliveryChannels to handleMceFcmMessage().
Add context to GDPR reinintialize API to allow use by classes which do not subclass MceApplication.

Note: Android SDK 3.7.1.2.1 has a known defect. If users force close the app, the background service which scans for beacons/geofences will crash and restart. Because it restarts, users will not experience any loss of function. Developers who are using crash reporting frameworks may see this reported.
iOS SDK 3.7.1.2.2Improvements:
Add workaround to prevent rare crash on iOS 11 due to Apple dispatch_once defect.
Android SDK 3.7.1.2.3Bug Fixes:
Fix rare timing issue when SDK is restarted.
Fix channel compatibility problems on API 18.

Improvements:
Handle additional rare exceptions thrown in SDK callbacks.

Note: Android SDK 3.7.1.2.3 has a known defect. If users force close the app, the background service which scans for beacons/geofences will crash and restart. Because it restarts, users will not experience any loss of function. Developers who are using crash reporting frameworks may see this reported.
Xamarin SDK 3.3.2.0Bug Fixes:
Fixed layout issues in the sample app on iPhone X.
Added refresh code to in-app page on sample app.

Improvements:
Updated iOS SDK to support native 3.7.1.2.2 SDK on iOS. (Note that integration has changed slightly).
Updated Android SDK to support native 3.7.1.2.3 SDK on Android.
Added support for iPhone X.
Added GDPR support for iOS, Android and Forms.
Added client support for new in-app messages mechanism; server support still to come.

April (2018)

Compatible with 18.1 IBM WCA

EnhancementDescription
Android SDK 3.7.1.2Bug Fixes:
Eliminated false-positive warning about memory leak.

Improvements:
Added support for European Union General Data Protection Regulations (GDPR):
autoReinitialize flag in MceConfig.json to define how the SDK behaves after a GDPR request.
API for reinitializing the SDK.
API for determining if the SDK is in GDPR “forgetting” state.
Provided an extension to FcmMessagingService to allow it to behave more nicely when Firebase messaging service is implemented in other parts of the app as well.
Added framework for a new in-app messaging implementation to be delivered later.
Note: Android SDK 3.7.1.2 has a known defect. If users force close the app, the background service which scans for beacons/geofences will crash and restart. Because it restarts, users will not experience any loss of function. Developers who are using crash reporting frameworks may see this reported.

March (2018)

Compatible with 18.1 IBM Marketing Cloud Release

EnhancementDescription
iOS SDK 3.7.1.1Bug Fixes:
Resolved memory leak in MCEInboxTableViewController.
Resolved memory leak in SwiftSample RegistrationVC.
Resolved issue with deleted tasks when upgrading.

Improvements:
Added support for European Union General Data Protection Regulations (GDPR). WCA API to trigger this will be added to the server in the future:
autoReinitialize flag in MceConfig.json to define how the SDK behaves after a GDPR request.
API for reinitializing the SDK.
API for determining if the SDK is in GDPR “forgetting” state.
Revised watch code to support GDPR.
Added sample app to demonstrate merging inbox messages and another message source.
Prefixed a number of constant names with MCE to prevent collisions with other SDKs.
Moved private databases to a subdirectory to prevent collisions with other SDKs.
Moved most preferences from NSUserPreferences to a local file. This improves upgrades and allows preference access when the device is locked.
iOS SDK 3.7.1.1.1Bug Fixes:
Removed outdated references to CoreBluetooth from beacon manager.
Updated code to apply file protection only after database creation.
iOS SDK 3.7.1.2Bug Fixes:
Resolved issue with Documents directory being used inappropriately.
Added code to handle registration issue after app migration via iCloud / iTunes.
Prevented location initialization when location configuration flag not set.
Fixed minor UI defect (app key not refreshed) when registering with manual integration in sample app.
Updated several comments in header files.

Improvements:
Added image carousel plugin
Added additional guard code around scheduleSync to prevent crashes when configuration is lost.
Added framework for a new In-app messaging implementation to be delivered later

As iOS 9 has less than 5% market share, testing has been on iOS 10 and 11 only.

February (2018)

Compatible with 18.1 Watson Campaign Automation

EnhancementDescription
Android SDK 3.7.1.0.1Bug Fixes:
Added code to enable push for platforms after Android N_MR1. This requires a manifest update if you support Android O and later (BIND_JOB_SERVICE and MceJobService; see their descriptions in the AndroidManifest.xml doc).
Changed beacon timeouts to seconds rather than milliseconds.
Resolved crash when very large images are sent in in-app messages.

Improvements:
Reverted InboxMessageActivity to use support.v7.app.AppCompatActivity to re-enable ActionBar.
Added support for sorting messages by ascending or descending order (override InboxControl isMessagesSortAscending()).
Android SDK 3.7.1.0.2Bug Fixes:
Fixed crash in location retrieval in Android O and higher.
Fixed missing SDK log file issue when “logfile”:true.
Fixed intermittent crash when beacons are enabled in Android O and higher.
Removed obsolete code that caused intermittent crash in GCM when receiving GCM notification.
Changed beacon timeouts to seconds (as documented) rather than milliseconds.
Resolved crash when very large images are sent in in-app messages.
Fixed crash receiving simple inbox message on Kitkat.
Added code to prevent multiple geofence entry events.
Fixed case where GCM messages could repeat.

Improvements:
Reverted InboxMessageActivity to use support.v7.app.AppCompatActivity to re-enable ActionBar.
Added support for sorting messages by ascending or descending (override InboxControl isMessagesSortAscending())
Android SDK 3.7.1.0.3Bug Fixes:
Fixed a critical issue that caused repeated phone home events (introduced in 3.7.1.0.2). We recommend all 3.7.1.0.2 users move to 3.7.1.0.3.
Added code to check registration status on phone home (resolves an issue when backup/restore from Google Drive occurs).
Fixed issue with cached location updates not being handled appropriately.

January (2018)

Compatible with 18.1 Watson Campaign Automation Release

EnhancementDescription
iOS SDK 3.7.1.0Bug Fixes:
Prevented bad state when deleting inbox messages.
Updated the inbox when an inbox push is received while the inbox is open.
Added synchronization code to location manager for thread safety.
Refreshed push token when it changes due to backup/restore.

Improvements:
Update Swift Sample app to Swift 4.
Update Apple Watch Support to watchOS 4.1 and add integration with the sample app.
Add code to support compatibility with C++ (header, variable name changes).
When possible, use server time rather than device time when doing inbox sync. This improves metrics when devices have the wrong time/timezone.
Retrieve inbox message immediately upon receiving simple push with inbox component.
Added a clearExpiredMessages method (customer request) to allow an app to remove expired inbox messages on demand.
Reduce network traffic and improve battery life by caching attributes on the device. If an app sets an attribute that has already been set to the requested value, don’t send it again. Multiple attribute updates are sent in a batch, rather than one at a time.
Further reduce network traffic by backing off repeated requests until the server is ready.
Deliver events/attributes in a more timely fashion by trying to send the values before the app closes.
Simplify testing by allowing “non-sticky mobile user IDs” which reset to a new value on uninstall/reinstall.
Phone home more quickly (rather than once a day) when the mobile user ID of a device changes due to establishidentity API.
Add additional configuration error checks for baseUrl.
Remove unused information from registration payload.
Upgraded logging system so to be compatible with Mac OS High Sierra.
Removed clutter from logfile.
Android SDK 3.7.1.0Bug Fixes:
Fixed stack overflow when calling API to turn off default notifications.
Fixed exception with geofence sync when geofences have been created and then all deleted.

Improvements:
Add support for FCM.
Add MceSdkConfiguration class to allow setting configuration outside MceConfig.json.
Added shouldDisplayInboxMessage to match iOS implementation.
Added code to set large and small icon for notifications.
Simplify testing by allowing “non-sticky mobile user IDs” which reset to a new value on uninstall/reinstall.
Retrieve inbox message immediately upon receiving simple push with inbox component.
When possible, use server time rather than device time when doing inbox sync. This improves metrics when devices have the wrong time/timezone.
Reduce network traffic and improve battery life by caching attributes on the device. If an app sets an attribute that has already been set to the requested value, don’t send it again. Multiple attribute updates are sent in a batch, rather than one at a time.
Further reduce network traffic by backing off repeated requests until the server is ready.
Phone home more quickly (rather than once a day) when the mobile user ID of a device changes due to establishidentity API.
Cordova SDK 3.5.0Note: Cordova 7.0.0 for Android introduces breaking changes to file path locations. For this SDK release, please use the 6.4.0 Android release of Cordova:
cordova platform add [email protected]
For iOS, you can use Cordova 7.0.0.

Improvements:
Retrieve inbox message immediately upon receiving simple push with inbox component.
Simplify testing by allowing “non-sticky mobile user IDs” which reset to a new value on uninstall/reinstall. See Assign new MUIDs to devices when reinstalling apps.
Integrated iOS SDK 3.7.1.0
Integrated Android SDK 3.7.1.0
Xamarin SDK 3.3.1.0Improvements:
Retrieve inbox message immediately upon receiving simple push with inbox component.
Simplify testing by allowing “non-sticky mobile user IDs” which reset to a new value on uninstall/reinstall.
Integrated iOS SDK 3.7.1.0
Integrated Android SDK 3.7.1.0
Added configuration flag for non-sticky MUID.

2017

November (2017)

Compatible with 17.3 Watson Campaign Automation Release

EnhancementDescription
iOS SDK 3.7.0.4Bug Fixes:
Fixed an issue which caused the config file to be read twice. This was harmless but distracting in the log.

Improvements:
Removed requirement for CoreBluetooth to sense Bluetooth radio state. This was preventing customers from publishing to the app store if they didn’t have Bluetooth permissions and/or appropriate location descriptions in Info.plist.
iOS SDK 3.7.0.5Bug Fixes:
Fixed a crash which happened when a device had a queued channel update, and then was upgraded from an SDK before 3.7.0.0 to 3.7.0.0 or later.
Cordova SDK 3.4.3Bug Fixes:
Resolved inbox push issue (push not opening) when app is killed and then restarted on Android.
Fixed inbox sync issues (empty inbox) on iOS and Android.

Improvements:
Changed Android icon spec to use mipmap instead of drawable.
Updated iOS SDK to support native 3.7.0.5 SDK / iOS 11.
Updated Android SDK to support native 3.7.0.0.1 SDK.
Updated Android GCM library versions to be compatible with Google Analytics.
Android SDK 3.7.0.1Bug Fixes:
Resolved crash when location sync tries to remove geofences that don’t exist on the device.

October (2017)

Compatible with 17.3 Watson Campaign Automation Release

EnhancementDescription
Android SDK 3.7.0.0.1Bug Fixes:
Caught exception when Bluetooth location services are started on Android SDK versions 16 through 18. This fix is applicable only to customers who enable location services and also support Android 4.0 (Ice Cream Sandwich) through 4.3.1 (Jelly Bean).
Cordova SDK 3.4.1Improvements:
Updated iOS SDK to support native 3.7.0.3 SDK / iOS 11.
Updated Android SDK to support native 3.7.0.0.1 SDK
Added NSLocationAlwaysAndWhenInUseUsageDescription key to Info.plist.
Added support for delayed initialization of location on iOS.
Added support for delayed initialization of location on Android.
Xamarin SDK 3.3.0.1Improvements:
Updated iOS SDK to support native 3.7.0.3 SDK / iOS 11.
Updated Android SDK to support native 3.7.0.0.1 SDK
Added NSLocationAlwaysAndWhenInUseUsageDescription key to Info.plist.
Added support for delayed initialization of location on iOS.
Added support for delayed initialization of location on Android.

September (2017)

Compatible with 17.3 Watson Campaign Automation Release

EnhancementDescription
DeprecationWith the 3.7.0.0 release, some APIs have been deprecated. Alternatives exist that will reduce network traffic and improve customer experience and battery life in most cases.

The set user attributes API has been deprecated. Use the update attributes API instead to set values, and the delete attributes API to delete values.

The direct clients for attributes and events have been deprecated. Use the queued clients instead, which will retry if server errors occur.

The channel attributes API has been deprecated. If you are using channel attributes, please contact support to discuss alternatives.
Android SDK 3.7.0.0Bug Fixes:
Remove redundant inbox events.
Ensure that push messages use the correct personalization.

Improvements:
Report Bluetooth and location enable/disable events.
Improve beacon service availability.
Ensure retry if event / attributes clients fail.
Add event batching to reduce network connections. (New parameter required in MceConfig.json.)
Deprecated channel attributes API.
Deprecated set user attributes API.
DeprecationWith the release of the 3.7.0.0 native SDKs, some Cordova and Xamarin APIs have been deprecated. Alternatives exist that will reduce network traffic and improve customer experience and battery life in most cases.

The set user attributes API has been deprecated. Use the update attributes API instead to set values, and the delete attributes API to delete values.

The direct clients for attributes and events have been deprecated. Use the queued clients instead, which will retry if server errors occur.

The channel attributes API has been deprecated. If you are using channel attributes, please contact support to discuss alternatives.
Cordova 3.4.0Improvements:
Add support for Cordova 7 (new package.json for each package).
Changes to support iOS and Android 3.7.0.0 native packages.

Deprecation of:
setUserAttributes,
queueSetUserAttributes,
updateUserAttributes,
deleteUserAttributes,
setChannelAttributes,
queueSetChannelAttributes,
updateChannelAttributes,
deleteChannelAttributes,
queueDeleteChannelAttributes,
addEvent.
Xamarin 3.3.0.0Improvements:
Changes to support iOS and Android 3.7.0.0 native packages.

Deprecation of:
IBMMobilePush.Forms.SDK,
IBMMobilePush.Forms.IIBMMobilePush, IBMMobilePush.Forms.iOS.IBMMobilePushImpl, IBMMobilePush.Forms.Droid.IBMMobilePushImpl,
SetUserAttribute,
UpdateUserAttribute,
SetChannelAttribute,
UpdateChannelAttribute,
DeleteChannelAttribute,
QueueSetUserAttribute,
QueueSetChannelAttribute,
QueueUpdateChannelAttribute,
QueueDeleteChannelAttribute,
AddEvent.
iOS 11 SupportThe 3.7.0.1 release adds support for iOS 11. Note that iOS 11 has some underlying changes which result in different behavior for certain types of messages.
Support for deferred location initializationThis release adds support for deferred initialization of the location subsystem on iOS. (Native Android already has this feature.) To use deferred location initialization, set "autoinitialize": false in the "location" section of MceConfig.json, then call [[MCESdk sharedInstance] manualLocationInitialization] when you’re ready to start location services.
iOS SDK 3.7.0.1Improvements:
Added support for iOS 11.
Added NSLocationAlwaysAndWhenInUseUsageDescription key to Info.plist.
Added support for delayed initialization of location services.

August (2017)

Compatible with 17.3 Watson Campaign Automation Release

EnhancementDescription
DeprecationWith the 3.7.0.0 release, some APIs have been deprecated. Alternatives exist that will reduce network traffic and improve customer experience and battery life in most cases.

The set user attributes API has been deprecated. Use the update attributes API instead to set values, and the delete attributes API to delete values.

The direct clients for attributes and events have been deprecated. Use the queued clients instead, which will retry if server errors occur.

The channel attributes API has been deprecated. If you are using channel attributes, please contact support to discuss alternatives.
iOS SDK 3.7.0.0Bug Fixes:
Eliminated defect where session start events were sent twice.
Prevent MceAppDelegate from starting twice due to misconfigured appDelegate.

Improvements:
Added code to allow support for notification content extensions and custom actions.
Added code to allow category name to be defined in the payload when sending multiple actions.
Enabled storing of NSArray and NSDictionary attributes as JSON strings.
Provided simple example plugin in sample app.
Reduced registration API traffic.
Ensure retry if event / attributes clients fail.
Added additional guard code to prevent crashes due to uninitialized values.
Improve re-registration error handling.
Deprecated channel attributes API.
Deprecated set user attributes API.

July (2017)

Compatible with 17.2 IBM Marketing Cloud Release

EnhancementDescription
iOS SDK 3.6.7.0Bug Fixes:
Eliminated defect where session start events were sent twice.
Resolved defect where newly imported iBeacons may not be monitored/detected until the application is restarted.
Resolved issue where wrong inbox message could be displayed in some cases.

Improvements:
Added support for marking inbox messages as unread.
Updated InApp plugin to support background image.
Improved reporting of location and Bluetooth status of device.
Added ability to use mutable-content for dynamic categories (including moving to a .framework file for mutable-content support).
Added inbox sync rate feature for parity with Android.
Deprecated MCERegistrationDetails class methods in favor of instance methods.
Android SDK 3.6.6.3Increased rate of inbox messages that can be retrieved before throttling.

June (2017)

Compatible with 17.2 IBM Marketing Cloud Release

EnhancementDescription
Cordova SDK 3.3.1The native SDK versions in this package were updated to using 3.6.6.0 for iOS and 3.6.6.1 for Android.
Android SDK 3.6.6.2Optimizations:
Inbox plugin functionality and its APIs are moved into the SDK, with the Inbox plug containing only the customizable portion of Inbox UI code.
Full inbox syncs are limited to once per 6 hours, but individual inbox message retrieval connected to a push events will continue to work as before.
iOS SDK 3.6.6.1Bugfix: Resolved defect where newly imported iBeacons may not be monitored/detected until the application is restarted.

May (2017)

Compatible with 17.2 IBM Marketing Cloud Release

EnhancementDescription
Xamarin SDK 3.2.0.0New Features:
iBeacon and Geofence support.
Personal sites support: identify mobile users’ home and work locations.
Support for iOS 10.
Upgraded our native libraries for Mobile Push to 3.6.6.0 (iOS) and 3.6.6.1 (Android).

Bug fixes:
All rolled up native bug fixes with library upgrades are part of this package.
Android SDK 3.6.6.1Bug fixes:
For mobile apps migrating from 3.5.4.x to 3.6.6.0, fix to allow a clean Inbox database migration.
RichContentDatabaseHelper methods changed from ‘package’ to ‘public’.
iOS SDK 3.6.6.0New features:
Personal sites support: identify mobile users’ home and work locations.
Zebra beacon support / Zebra SDK integration.
Reduced the volume of data sent by the device to the server.
New callback for additional control when push messages arrive.
Debugging details about push messages now printed in verbose log.

Bug fixes:
Correct registration issue when upgrading from Xtify 2.x
Android SDK 3.6.6.0New features:
Personal sites support: identify mobile users’ home and work locations.
Zebra beacon support / Zebra SDK integration.
Reduced the volume of data sent by the device to the server.
Support sound and vibration control in notification payload.
Convenience API to create custom event without a mailing ID.

Bug fixes:
Avoid reporting duplicate geofence events.
Report some geofence exit events which were previously not reported.
Improve battery usage when location is enabled.
Improve battery usage when using inbox message plugin.

April (2017)

Compatible with 17.1 IBM Marketing Cloud Release

EnhancementDescription
Cordova SDK 3.3.0.1SDK packaged with Native iOS SDK v3.6.4.1 and Native Android SDK v3.6.5.0
Bugfix: Resolved issue in JS when sending the same rich message with different personalization values.
iOS SDK 3.6.4.2Optimized SDK location synchronization. We recommend all location-aware mobile apps that are using our iOS SDK v3.6.3.0 through v3.6.4.1 upgrade to v3.6.4.2 for improved battery life and performance.
iOS SDK 3.6.4.3Prevent duplicate events when database is locked.

March (2017)

Compatible with 17.1 IBM Marketing Cloud Release

EnhancementsDescription
iOS SDK 3.6.4.1Bugfix: Resolved issue when sending the same rich message with different personalization values.
Android SDK 3.6.5.0InApp plugin bugfix for a crash that was happening when upgrading the app from older SDK (3.6.3.0 and below) to 3.6.4.0.
Removed InApp plugin dependency on Realm database to reduce size in Google Play. For more details see https://ibm.biz/BdiDvr
READ_PHONE_STATE permission is no longer required.
Missing javadoc was added for sdk API, inApp plugin and Inbox plugin.
SDK plugins are also released in AAR format. An additional sample application ‘DemoAar’ was added.

February (2017)

Compatible with 17.1 IBM Marketing Cloud Release

EnhancementDescription
iOS SDK 3.6.4.0.1 & Android SDK 3.6.4.0New functionality added to both iOS and Android SDKs
Added iBeacon support.
Enhancement to stop monitoring locations that have been deleted on the server.
Aligned location configuration between the two native SDKs.
Additional Android only improvementsOpen Inbox notification action on Android now sends same stats as iOS SDK.
Secure engineering – Penetration test fixes.
Large icon support.
Fixed crash when using bundled and non-bundled notifications.
Inline manifest & config documentation.
Cordova SDK 3.2.9Added iBeacon and Geofence support, iOS 10 general support as well as media attachments.

2016

November (2016)

Compatible with 16.4 IBM Marketing Cloud Release

EnhancementDescription
iOS SDK 3.6.3.1Due to issues during the beta period of iOS 10, our SDK was changed to an Embedded Binary style framework. These issues have now been resolved in the latest Xcode builds, however it turned out that the Embedded Binary style causes some issues when Archiving your build to submit to the app store. We have addressed these issues in the 3.6.3.1 release by switching back to the Static Framework style SDK build process. Please upgrade to this SDK version if you are in the process of submitting a new mobile app to App Store for the first time or publishing an update.

October (2016)

Compatible with 16.4 IBM Marketing Cloud Release

EnhancementDescription
iOS SDK 3.6.3.0 & Android SDK 3.6.3.0Starting with the 3.6.3.0 release, both iOS and Android SDKs can report when users enter and exit geofences that have been configured by the customer’s location admin in the IBM Marketing Cloud (IMC) console/UI. This SDK works with the IMC 16.4 release, and allows marketers to engage with their mobile app users in real-time based on user location.

In the iOS 3.6.3.0 SDK, the event management system has been improved as well.

September (2016)

Compatible with 16.3 IBM Marketing Cloud Release

EnhancementDescription
iOS SDK 3.6.2.0This package of IBM Marketing Cloud iOS Mobile Push SDK contains formal iOS 10 notification support. All iOS 10 features described in the August 17th releases notes are available here. This SDK is built with Xcode 8 build 8A218a for the iOS 10 golden master. Developers can use this SDK to publish apps in the App Store in time for September 13th Apple release date.

Additional enhancements include support for detecting and correcting accidental appKey misconfiguration in Mobile App, similar to what was introduced in Android SDK 3.6.1.7 in June. Note: IBM Marketing Cloud does not recommend that app developers switch appKey in subsequent publishes once the app has already been published.

August (2016)

Compatible with 16.3 IBM Marketing Cloud Release

EnhancementDescription
iOS SDK 3.6.2.0-beta5This beta package of IBM Marketing Cloud iOS Mobile Push SDK contains iOS 10 notification support, media attachment and text entry support as well as updated sample apps to demonstrate iOS 10 usage. Swift sample app changes include updating it to Swift 3.0 syntax. Both standard sample and swift sample apps contain new methods for registering with iOS 10 for APNS.

Starting with this release, we will include the Apple watch plugin within the SDK package. This package supports Watch OS 3 beta version.

We will follow-up with a formal release of iOS SDK when Apple iOS 10 and Xcode 8 Release Candidate versions are available.

Non-iOS 10 enhancements include support for detecting and correcting accidental appKey misconfiguration in Mobile App, similar to what was introduced in Android SDK 3.6.1.7 in June. Note: IBM Marketing Cloud does not recommend that app developers switch appKey in subsequent publishes once the app has already been published.

July (2016)

Compatible with latest 16.2 IBM Marketing Cloud Release

EnhancementDescription
Android SDK 3.6.1.8Following the enhancement in the previous release of Android SDK 3.6.1.7, wherein we put provisions in place for detecting and correcting accidental appKey misconfiguration in Mobile App, this release we improved it by adding fix to address the issue where sender Id may not refreshed after application switched to the new application key.
Android SDK 3.6.1.9This release of Android Push Notification SDK includes enhancements that allow marketers to exploit new push notification functionality in latest release of Android OS – Android 7.0 Nougat (Android N):

Bundling notifications support – This SDK supports bundling notifications together based on the campaign.
User input notification action – This SDK supports notification actions that can receive user text input. On Android N devices, the action button turns into an editable text field with a button to send the text. On Android M and below, the customer needs to implement the input UI.
Xamarin Forms SDK 3.0.0.0We’ve heard the requests of our customers and implemented our first ever Xamarin Forms SDK for IBM Marketing Cloud. This SDK includes a unified API interface that can be used from a Xamarin Forms project to register with IBM Marketing Cloud servers for seamless push messaging support. Using the unified API interface you can send events and attributes from a central project and leave the platform details of implementation to the embedded native SDKs within our Xamarin Forms SDK. Due to the design of Xamarin, platform specific features are not available from a Forms application, so some platform specific features like iOS categories are unavailable. Also note that due to the changing landscape of mobile platforms, the latest features of Android N and iOS 10 are not yet available for any Xamarin based applications.

June (2016)

Compatible with latest 16.2 IBM Marketing Cloud Release

EnhancementDescription
Android SDK 3.6.1.7Enhancements in the SDK registration flow to detect and correct accidental appKey misconfiguration in Mobile App.
Note: IBM Marketing Cloud does not recommend that app developers switch appKey in subsequent publishes once the app has already been published.

April (2016)

Compatible with 16.1 and 16.2 IBM Marketing Cloud Releases

EnhancementDescription
Android SDK 3.6.1.6 & iOS SDK 3.6.1.3 & Cordova SDK 3.2.7Android 3.6.1.6, iOS SDK 3.6.1.3 and Cordova SDK 3.2.7, all include new features related to templates: additional options for existing InApp Banner Templates, new InApp Image and Video Templates that display an image or video and optionally a subject and a message, and a new template for Inbox messages which optionally allows video and image that will be displayed in the message body. See the documentation for more details.
UI support for these templates will be included in the upcoming IBM Marketing Cloud 16.2, where they will become part of the default templates dropdown menu. Until then, the templates can still be used with some configuration of Templates under the Development menu in the Marketing Cloud UI.
All SDKs also include a change from previous releases: InApp messages are deactivated when clicked.
These SDK packages are backwards compatible with 16.1 release of the IBM Marketing Cloud back-end.
iOS SDK 3.6.1.3Bug fix: Handle push messages correctly in case there are pop-ups are on the screen.
Android SDK 3.6.1.6Bug fixes: Expandable notification action button now uses the specified name, the MceBroadcastReceiver onAttributesOperation method is called after a queued attributes operation is performed, and the inbox display activity no longer causes a crash on some high resolution devices.
Windows SDK 3.1.1.0Added brand new support for InApp and Inbox Messages with templates.
Added calendar plugin.
Deactivate InApp message when it’s clicked.
Corrected Sample custom action startup order.
Cordova SDK 3.2.7This package includes the latest versions of native SDKs – iOS SDK 3.6.1.3 and Android 3.6.1.6

February (2016)

Compatible with 16.1 IBM Marketing Cloud Release

EnhancementDescription
iOS SDK 3.6.0.13Bug fix : Fixed first launch isPushEnabled/isPushDisabled event sending.
Android SDK 3.6.0.11Bug fixes: Logging system crash fix as well as Dial action failure on Android M fix.
Cordova SDK 3.1.11 Replaced Android SDK with 3.6.0.11.
Replaced iOS SDK with 3.6.0.13.
* Updated iOS Application Delegate with push enabled fix (in iOS 3.6.0.13 release).

January (2016)

Compatible with 16.1 IBM Marketing Cloud Release

EnhancementDescription
Windows 10 SDK 3.0.0.0Starting with IBM Marketing Cloud release 16.1, we now provide API support for a new platform for Push Notification – Windows 10. (Support in the UI will come in a future release.) You will find a brand new Windows 3.0.0.0 SDK on our Download page. It allows you to send Simple Push Notifications at this time, with Inbox and In-App support coming in future releases. This SDK includes much of the functionality that already exists in iOS and Android platforms such as:

Custom actions.
Device attributes for tracking mobile app user behavior.
Session tracking events and notification click events.
Simplified SDK integration.
* Feature rich Sample App for developer to use and/or adapt.
Cordova SDK 3.1.9Replaced iOS SDK with 3.6.0.12 and Android SDK with 3.6.0.8. Added support for Calendar, Snooze and Display Web Plugins. Modularized Inbox and In-app plugins
Apple Watch Plugin 1.0.5This release for the Apple Watch Plugin in the IBM Marketing Cloud provides improvements such as:

Added dynamic action category support.
Added hand-off to phone for actions that cannot be accomplished on the watch.
* Tracking clicks from the watch as type=watch