Skip to content

How to integrate MobileMessaging Pod without `use_frameworks!`

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

Starting from 10.1.0 SDK version, MobileMessaging pod can be linked as static library using CocoaPods, to achieve it don't use use_frameworks! in the Podfile:

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '12.0'

target 'YourProjectsMainTarget' do
    pod 'MobileMessaging'
end

Could be useful to call pod deintegrate before pod update if previously MobileMessaging pod was linked with use_frameworks!, so that previous build settings and other configuration files will be cleaned up.

Notification Service Extension integration

Notification Service Extension for Rich Notifications and better delivery reporting is available starting from iOS 10, check steps from this guide, noticing that to run automatic integration using "mmine" Ruby Gem you will need to use additional parameter -l (--static-linkage), which is used to integrate NotificationServiceExtension without use_frameworks:

Install and run "mmine" Ruby Gem using following commands:

```
$ sudo gem install mmine
$ mmine integrate \
--application-code <your Push Application Code from Infobip portal> \
--project <absolute path to your Xcode project (.xcodeproj file)> \
--app-group <your App Group Id from previous section> \
--target <name of your projects main target> \
--static-linkage
```

After calling it libMobileMessaging.a and libCocoaLumberjack.a will be added to the Frameworks and Libraries of NotificationServiceExtension target and "${PODS_CONFIGURATION_BUILD_DIR}/CocoaLumberjack" "${PODS_CONFIGURATION_BUILD_DIR}/MobileMessaging" will be added to the Library Search Paths in the Build Settings.

Clone this wiki locally