Skip to content

Migration guide from 8.x to 9.x

Davor Komušanac edited this page Dec 5, 2022 · 1 revision

Migration from 8.x to 9.x versions of the SDK

New versions of the SDK introduced breaking changes in API. Prefix 'MM' added to all publicly used classes, to prevent names clashing issues with other frameworks.

API changes

User profile management API

Old API New API
Installation class MMInstallation class
UserIdentity class MMUserIdentity class
UserAttributes class MMUserAttributes class
User class MMUser class
Email class MMEmail class
Phone class MMPhone class
Gender class MMGender class
GenderNonnull enum MMGenderNonnull enum
SuccessPending enum MMSuccessPending enum
CustomEvent class MMCustomEvent class
BaseEvent class MMBaseEvent class
DateTime class MMDateTime class

Messages and notifications management API

Old API New API
MTMessage class MM_MTMessage class
MOMessage class MM_MOMessage class
BaseMessage class MMBaseMessage class
MOMessageSentStatus class MM_MOMessageSentStatus class
MessageHandlingDelegate MMMessageHandlingDelegate
UserNotificationType MMUserNotificationType

Message Storage

Old API New API
MessageStorage MMMessageStorage
MessageStorageFinders MMMessageStorageFinders
MessageStorageRemovers MMMessageStorageRemovers
MessageStorageDelegate MMMessageStorageDelegate
Query MMQuery

Interactive Notifications

Old API New API
NotificationAction MMNotificationAction
NotificationActionOptions MMNotificationActionOptions
TextInputNotificationAction MMTextInputNotificationAction
NotificationCategory MMNotificationCategory
NotificationCategoryOptions MMNotificationCategoryOptions

In-app notifications API

Old API New API
InteractiveMessageAlertSettings class MMInteractiveMessageAlertSettings

Geofencing API

Old API New API
GeofencingService class MMGeofencingService class
LocationServiceKind class MMLocationServiceKind class
LocationServiceUsage enum MMLocationServiceUsage enum
GeofencingCapabilityStatus enum MMGeofencingCapabilityStatus enum
GeoEventHandling protocol MMGeoEventHandling protocol
CampaignState enum MMCampaignState enum
DeliveryTime class MMDeliveryTime class

In-app chat API

Old name New name
InAppChatService class MMInAppChatService class
ChatSettings class MMChatSettings class
InAppChatDelegate protocol MMInAppChatDelegate protocol
ChatNavigationVC class MMChatNavigationVC class
ChatViewController class MMChatViewController class

Other APIs

Old API New API
UserAgent class MMUserAgent class
PrivacySettings calss MMPrivacySettings class
WebViewSettings class MMWebViewSettings class
WebViewController class MMWebViewController class
ActivityIndicatorProtocol protocol MMActivityIndicatorProtocol protocol
Clone this wiki locally