Un SDK de notifications push iOS remplit deux fonctions : il gère la connexion entre votre application et le service de notifications push d'Apple, et il relie cette connexion à une plateforme de campagne afin que votre équipe marketing puisse l'utiliser. Ce guide couvre les deux aspects : les étapes d'intégration réelles avec le code que vous expédierez, et ce qui devient possible dans le tableau de bord une fois le SDK installé. Il reflète le SDK iOS PushEngage 1.0, la version actuelle.
Pourquoi utiliser un SDK de notifications push iOS pour votre application
Vous pouvez communiquer directement avec APNs : enregistrez un jeton de périphérique, créez un expéditeur, gérez vous-même les rappels de livraison. Ce que vous obtenez d'APNs brut, c'est la livraison ; ce que vous n'obtenez pas, c'est tout ce dont le marketing a besoin : segmentation, campagnes planifiées et déclenchées, tests A/B, analyses et attribution des revenus. Un SDK comme celui de PushEngage connecte votre application à cette couche une fois pour toutes, de sorte que les campagnes sont créées dans un tableau de bord au lieu d'un projet Xcode. Le résultat pratique : après la semaine d'intégration, les campagnes push cessent d'être des tickets d'ingénierie.
Comment installer le SDK de notifications push iOS PushEngage
Vous aurez besoin d'iOS 12+, Xcode 15+, d'une clé APNs téléchargée sur votre tableau de bord PushEngage, et d'environ un après-midi. Le SDK est livré sous forme de deux modules : PushEngage pour votre cible d'application et PushEngageExtension pour les cibles d'extension de notification.
Étape 1 : Ajouter le package
Dans Xcode, allez dans Fichier → Ajouter les dépendances de package et entrez l'URL du dépôt — ou utilisez CocoaPods :
# Swift Package Manager
https://github.com/awesomemotive/pushengage-ios-sdk
# CocoaPods
target 'YourApp' do
pod 'PushEngage', '~> 1.0.0'
end
target 'YourNotificationServiceExtension' do
pod 'PushEngageExtension', '~> 1.0.0'
end
Étape 2 : Configurer le groupe d'applications
Ajoutez la capacité Groupes d'applications à votre cible d'application et à chaque cible d'extension de notification, en utilisant le même identifiant de groupe, et déclarez-le dans le fichier Info.plist de chaque cible :
<key>PushEngage_App_Group_Key</key>
<string>group.com.yourcompany.yourapp</string>
L'application et ses extensions partagent l'état de l'abonné via ce conteneur. L'omettre est l'erreur d'intégration la plus courante — sans cela, vos extensions démarrent vides à chaque livraison.
Étape 3 : Initialiser et demander la permission
import PushEngage
@main
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
PushEngage.setAppID(id: "YOUR_APP_ID")
PushEngage.setInitialInfo(for: application, with: launchOptions)
return true
}
}
// Later, at a value moment — not on first launch:
PushEngage.requestNotificationPermission { granted, error in
if granted { /* subscribed */ }
}
L'endroit où vous placez cet appel de permission est plus important que tout le reste dans ce guide — iOS ne vous accorde qu'une seule invite native. Le guide d'amorçage de permission couvre le modèle de demande douce qui la protège.
Comment envoyer des notifications push riches pour iOS
Les images, les boutons d'action et les sons personnalisés nécessitent une extension de service de notification — une petite cible qui intercepte chaque notification et joint les médias avant l'affichage. Ajoutez la cible dans Xcode, liez PushEngageExtension à celle-ci, et transmettez les deux appels de cycle de vie :
import PushEngageExtension
class NotificationService: UNNotificationServiceExtension {
override func didReceive(_ request: UNNotificationRequest,
withContentHandler contentHandler: @escaping (UNNotificationContent) -> Void) {
PushEngageExtension.didReceiveNotificationExtensionRequest(request,
bestContentHandler: contentHandler)
}
override func serviceExtensionTimeWillExpire() {
// hand back the best content prepared so far
}
}
À partir de là, les médias riches sont une fonctionnalité du tableau de bord : votre équipe marketing joint l'image du produit ou le graphique principal lors de la création de la campagne, et l'extension la rend. Aucune modification supplémentaire de l'application par campagne.
Comment créer des notifications push iOS personnalisées
La personnalisation s'appuie sur ce que le SDK sait de chaque abonné. Identifiez votre utilisateur et joignez des attributs, et chaque campagne peut segmenter et modéliser en fonction de ceux-ci :
// Identify the signed-in user (12 predefined fields supported)
PushEngage.identify(fields: [
"first_name": "Priya",
"email": "[email protected]",
"profile_id": "user-42",
"city": "Austin"
]) { success, error in }
// Attach custom attributes for segmentation
PushEngage.addSubscriberAttributes([
"favorite_category": "outerwear",
"loyalty_tier": "gold"
]) { success, error in }
// On sign-out, clear PII but keep the anonymous subscription
PushEngage.logout(fieldNames: nil) { success, error in }
Les appels identify répétés avec des données inchangées sont court-circuités localement, donc les appeler à chaque lancement est sûr. Une fois que les attributs sont transmis, la segmentation se fait dans le tableau de bord — « acheteurs de vêtements d'extérieur haut de gamme au Texas » devient une audience enregistrée, pas une requête SQL.
Comment ajouter un deep link dans les notifications push iOS
Chaque clic de campagne doit atterrir sur l'écran promis. Définissez le gestionnaire d'ouverture de notification une fois, routez en fonction du deep link qu'il transporte :
PushEngage.setNotificationOpenHandler { result in
// actionID is nil when the SDK already opened the URL itself
guard let deepLink = result.notificationAction.actionID else { return }
DispatchQueue.main.async {
router.navigate(to: deepLink) // e.g. myapp://cart
}
}
Le marketeur colle le deep link dans le formulaire de campagne ; votre gestionnaire s'occupe du routage. Les modèles complets — y compris les liens universels et l'option d'ouverture automatique — se trouvent dans le guide de deep linking.
Comment déclencher des campagnes à partir d'événements d'application
L'appel trackEvent du SDK 1.0 transforme tout comportement dans l'application en déclencheur de campagne — un panier abandonné, une étape d'intégration terminée, une catégorie consultée :
PushEngage.trackEvent(name: "cart_updated",
properties: ["cart_value": 89.50, "item_count": 2],
profileId: currentUserId,
provider: nil, eventType: nil) { _, _ in }
Instrumentez l'événement une fois ; le marketing crée et itère les campagnes en fonction de celui-ci indéfiniment. Le guide des campagnes déclenchées par événement contient la taxonomie complète et la configuration du panier, de l'intégration et du retour client.
Que faire maintenant que vous avez un SDK de notifications push iOS
L'intégration est le début, pas la ligne d'arrivée. La séquence la plus rentable : protégez votre taux d'opt-in avec un flux d'autorisation préparé, déployez la séquence d'abandon de panier (la campagne la plus rentable pour les applications de commerce), ajoutez le suivi des objectifs afin que chaque campagne rapporte des revenus au lieu d'ouvertures, puis construisez le cycle de vie — série d'intégration en front-end, retour client en back-end. Le guide de marketing push pour applications couvre cette couche stratégique de bout en bout, et la documentation de configuration guide chaque écran du tableau de bord. Chaque plan payant bénéficie d'une garantie de remboursement de 14 jours — et le SDK est sous licence MIT sur GitHub, vous pouvez donc lire exactement ce que vous déployez.