If your iOS app is not reporting push open statistics, the cause is usually an incorrect Notification Service Extension (NSE) setup. The NSE is what reports delivery, enables rich media, and lets Pushwoosh see the notification lifecycle.
1. Use the current NSE base class
Since Pushwoosh iOS SDK 7.1.0, the supported integration is to subclass PushwooshNotificationServiceExtension. PWNotificationExtensionManager.shared() is deprecated — replace it.
import PushwooshFramework
class NotificationService: PushwooshNotificationServiceExtension {}
That is the whole file. You can also skip the Swift file entirely and point the extension's NSExtensionPrincipalClass in Info.plist directly at PushwooshNotificationServiceExtension.
If you must customize the content, override didReceive(_:withContentHandler:) and call super, mutating the content inside the handler — Pushwoosh still runs the delivery event, badge, attachment download and timeout fallback.
2. Check the NSE target configuration
-
Pushwoosh_APPID: set it in your main app Info.plist. The extension inheritsPushwoosh_*keys from the host app, so you do not need to duplicate it in the extension's Info.plist — add it there only if you deliberately want to override the host value.<key>Pushwoosh_APPID</key> <string>XXXXX-XXXXX</string> Frameworks: make sure
PushwooshFramework.xcframeworkis listed under Frameworks, Libraries, and Embedded Content for the NSE target.App Group: share an App Group between the app and the extension (
PW_APP_GROUPS_NAMEin Info.plist) so badge state and, if you use a reverse proxy, the proxy URL are visible to the extension.Payload: the push must carry
mutable-content: 1, otherwise iOS never invokes the extension.
3. Re-create the extension
If everything above checks out and statistics are still missing, remove the Notification Service Extension target from the Xcode project and add it again, following our iOS SDK integration guide. Also make sure you are on a current SDK (7.2.0 at the time of writing).
Comments
0 comments
Please sign in to leave a comment.