You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cordova.apache.org by "ivanbilobrk (via GitHub)" <gi...@apache.org> on 2026/03/25 10:00:10 UTC
[I] Support for iOS App Extension targets in plugin.xml (Notification Service Extension, Share Extension, etc.) [cordova-ios]
ivanbilobrk opened a new issue, #1641:
URL: https://github.com/apache/cordova-ios/issues/1641
Summary
There is currently no way to declare an iOS App Extension target (e.g., Notification Service Extension, Share Extension, Widget Extension) in plugin.xml. Every plugin that needs an extension target must
manually manipulate the Xcode project file (project.pbxproj) using the xcode npm module in a hook script. This is fragile, error-prone, and creates significant maintenance burden for plugin authors. Or even worse, write manual instructions for clients on how to create a separate target using Xcode.
Motivation
Push notification SDKs (Infobip, OneSignal, Airship, etc.) require a Notification Service Extension to support:
- Rich push notifications (images, video, GIFs on the lock screen)
- Accurate delivery reporting (the extension runs even when the main app is killed)
- Content modification before display
Apple requires this to be a separate target in the Xcode project with its own bundle ID, entitlements, Info.plist, and source files. Currently, every plugin author must reimplement the same complex Xcode
project manipulation independently.
It would be great if all this could be handled by using config.xml file. Expo tools for React Native already has this support so idea can be taken from them.
BR, Ivan.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@cordova.apache.org.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@cordova.apache.org
For additional commands, e-mail: issues-help@cordova.apache.org