Configurer InboxKit avec Swift Package Manager
Disponible depuis le SDK iOS 7.0.40.
InboxKit est fourni comme une bibliothèque distincte au sein du package Swift Pushwoosh-XCFramework. Le SDK principal doit déjà être intégré ; si vous partez de zéro, suivez d’abord le guide d’intégration de base.
Ajouter le produit du package InboxKit
Anchor link to-
Ouvrez votre projet dans Xcode et accédez aux paramètres du projet → Package Dependencies, puis appuyez sur le bouton +.
-
Saisissez l’URL de package suivante :
https://github.com/Pushwoosh/Pushwoosh-XCFramework-
Configurez la Dependency Rule sur Up to Next Major Version avec la dernière version stable, puis cliquez sur Add Package.
-
Sur l’écran de sélection du package, choisissez au moins les produits suivants et ajoutez-les à votre cible d’application principale :
- PushwooshFramework (requis)
- PushwooshCore (requis)
- PushwooshBridge (requis)
- PushwooshInboxKit (le nouveau module)

Ajoutez les quatre produits surlignés à votre cible d’application principale.
- Ouvrez votre cible d’application principale et sous Frameworks, Libraries, and Embedded Content, confirmez que
PushwooshInboxKit.xcframeworkest listé et intégré.
C’est tout — InboxKit est maintenant lié au SDK principal.
Afficher la boîte de réception
Anchor link toAjoutez le contrôleur de la boîte de réception à n’importe quel flux de navigation. La configuration par défaut est suffisante pour obtenir une boîte de réception fonctionnelle avec les trois types de cellules standard :
import PushwooshInboxKit
let inboxVC = PushwooshInboxKitViewController()navigationController?.pushViewController(inboxVC, animated: true)@import PushwooshInboxKit;
PushwooshInboxKitViewController *inboxVC = [PushwooshInboxKitViewController new];[self.navigationController pushViewController:inboxVC animated:YES];Personnaliser la boîte de réception
Anchor link toEn Swift, configurez le contrôleur via le type de valeur PushwooshInboxKitAttributes. En Objective-C, utilisez les setters compatibles @objc sur le contrôleur — PushwooshInboxKitAttributes est une structure Swift et n’est pas pontée.
var attributes = PushwooshInboxKitAttributes()attributes.pullToRefreshEnabled = trueattributes.swipeToDeleteEnabled = trueattributes.pinningEnabled = trueattributes.style.unreadBadgeColor = .systemBlueattributes.style.titleFont = .systemFont(ofSize: 17, weight: .semibold)
let inboxVC = PushwooshInboxKitViewController(attributes: attributes)PushwooshInboxKitViewController *inboxVC = [PushwooshInboxKitViewController new];[inboxVC setBackgroundColor:[UIColor systemBackgroundColor]];[inboxVC setEmptyMessage:@"You have no messages yet"];La structure Style expose toutes les couleurs, polices, rayons d’angle et le formateur de date utilisés par les cellules par défaut. Chaque valeur est une couleur sémantique Apple par défaut, donc la boîte de réception réagit automatiquement au mode sombre du système.

Cellule avec légende et un thème personnalisé appliqué via PushwooshInboxKitAttributes.Style.
Gérer les appuis et les actualisations
Anchor link toConformez-vous à PushwooshInboxKitDelegate pour réagir aux actions de l’utilisateur et aux événements d’actualisation. Chaque méthode a une implémentation par défaut, vous ne surchargez donc que ce dont vous avez besoin :
final class InboxCoordinator: NSObject, PushwooshInboxKitDelegate { func inboxKit(_ vc: PushwooshInboxKitViewController, didSelect message: PWInboxMessageProtocol) -> Bool { // Retournez true pour laisser le SDK ouvrir l'URL du message ou le richmedia. // Retournez false si vous avez entièrement géré l'appui (par ex. routé vers un écran personnalisé). return true }
func inboxKit(_ vc: PushwooshInboxKitViewController, didRefreshWith messages: [PWInboxMessageProtocol], error: Error?) { // Affichez votre propre état vide / d'erreur ici si nécessaire. }}
inboxVC.delegate = inboxCoordinator