-
Notifications
You must be signed in to change notification settings - Fork 11
Migration to version 8.5.x
Version 8.5.0 introduces Swift Package Manager (SPM) support for the iOS side of the plugin, as an alternative to the existing CocoaPods integration.
This is a transition period. CocoaPods will still be fully supported until December 2nd, 2026, when CocoaPods Trunk is scheduled to become permanently read-only. You are not required to migrate to SPM right away. You can keep using CocoaPods and continue receiving all plugin updates as before. After that date, the iOS side of the plugin will only be updated via Swift Package Manager.
The plugin now ships both a Package.swift manifest (for SPM) and a <podspec> block in plugin.xml (for CocoaPods). Which one is used depends entirely on your cordova-ios version:
| cordova-ios version | Dependency manager used |
|---|---|
| v7.x | CocoaPods (<podspec>) |
| v8.x and above | Swift Package Manager (Package.swift) |
No changes to your config.xml or plugin configuration are required to pick a path — it's selected automatically at cordova platform add ios time. If SPM is not available in the application, CocoaPods will be used as a fallback.
If you keep cordova-ios at ^7.x.x, nothing changes for you. The <podspec> block remains in plugin.xml, and CocoaPods continues to work exactly as before.
Keep your cordova-ios version as-is in package.json:
"devDependencies": {
"cordova-ios": "^7.1.1"
}Just update the plugin version as usual:
cordova plugin remove com-infobip-plugins-mobilemessaging
cordova plugin add com-infobip-plugins-mobilemessaging@8.5.xYou'll keep receiving plugin updates, including new features and bug fixes, via CocoaPods until it's phased out.
This is the recommended long-term path, since CocoaPods support ends on December 2nd, 2026.
Prerequisites:
- cordova-ios v8.0.0 or higher
- Xcode 16 or higher
- NodeJS 20.17 or higher
- iOS deployment target 15.0 or higher
Steps:
-
Update
package.json:"devDependencies": { "cordova-ios": "^8.0.0", "com-infobip-plugins-mobilemessaging": "^8.5.0" }
npm install
-
Ensure your
config.xmlhas the required iOS preferences:<platform name="ios"> <preference name="SwiftVersion" value="5.0" /> <preference name="deployment-target" value="15.0" /> </platform>
-
Remove and re-add the iOS platform, so cordova-ios v8 sets up SPM instead of CocoaPods:
cordova platform remove ios cordova platform add ios
-
Open the generated
App.xcworkspacein Xcode and build normally. No Podfile orpod installis involved.
For full details, troubleshooting, and a breakdown of what changes structurally (lockfiles, workspace layout, Notification Service Extension setup), see the dedicated Swift Package Manager integration guide.
- Swift Package Manager integration — full guide, prerequisites, and troubleshooting
- Migration guide to version 8.3.x — Notification Service Extension auto-integration
If you have any questions or suggestions, feel free to send an email to support@infobip.com or create an issue.
- Library events
- Server errors
- Users and installations
- Messages and notifications management
- Inbox
GeofencingDEPRECATED- Privacy settings
- In-app chat
- Migration guides
- Migration guide to version 8.5.x
- Migration guide to version 8.3.x
- Migration guide to version 8.1.x
- Migration guide to version 7.9.x
- Migration guide to version 7.x.x
- Migration guide to version 6.2.x
- Migration guide to version 6.1.x
- Migration guide to version 6.x.x
- Migration guide to version 1.x.x
- Migration guide to version 2.2.x
- Migration guide to version 3.x.x
- Migration guide to version 4.x.x
- Migration guide to version 4.1.x
- Swift Package Manager integration
- Troubleshooting
- JSON Web Token (JWT) structure and generation example
- Trusted Domains Security