Passer au contenu

Achats depuis les messages in-app iOS

Pour permettre à vos utilisateurs d’effectuer des achats directement depuis les messages in-app affichés dans votre application iOS, vous pouvez implémenter la solution prête à l’emploi pour vos Rich Medias et ajouter des callbacks pour obtenir plus d’informations sur les achats in-app.

Implémentation JavaScript pour les Rich Medias

Anchor link to

Pour implémenter les achats in-app dans vos Rich Medias, utilisez un simple appel de fonction JavaScript :

pushwooshImpl.makePurchaseWithIdentifier("Premium"); // identifiant de produit spécifié dans les informations de votre produit sur l'App Store

Méthodes AppDelegate pour les callbacks

Anchor link to

Si vous avez besoin que des callbacks soient exécutés lors d’un achat, implémentez le protocole PWPurchaseDelegate comme suit :

  1. Rendez l’AppDelegate de votre projet conforme au protocole PWPurchaseDelegate :
@interface AppDelegate : PWAppDelegate <PushNotificationDelegate, PWPurchaseDelegate>
  1. Implémentez les méthodes de PWPurchaseDelegate dans votre AppDelegate :
#pragma mark - Purchase delegate methods
- (void) onPWInAppPurchaseHelperPaymentComplete:(NSString*) identifier {
NSLog(@“Délégué d'achat personnalisé -- paiement terminé pour l'identifiant : %@“, identifier);
}
-(void)onPWInAppPurchaseHelperProducts:(NSArray<SKProduct *>* _Nullable)products {
NSLog(@“Délégué d'achat personnalisé -- liste des produits récupérée”);
}
-(void)onPWInAppPurchaseHelperPaymentFailedProductIdentifier:(NSString* _Nullable)identifier error:(NSError* _Nullable)error {
NSLog(@“Délégué d'achat personnalisé -- échec du paiement pour l'identifiant %@ avec l'erreur %@“, identifier, error.description);
}

Liste des méthodes PWPurchaseDelegate disponibles

Anchor link to

Liste des produits

Anchor link to
@protocol PWPurchaseDelegate <NSObject>
// Informations détaillées sur la liste des produits dans votre application
-(void)onPWInAppPurchaseHelperProducts:(NSArray<SKProduct *>* _Nullable)products;
@end

Transaction réussie

Anchor link to
@protocol PWPurchaseDelegate <NSObject>
// Une transaction traitée avec succès
<strong>-(void)onPWInAppPurchaseHelperPaymentComplete:(NSString* _Nullable)identifier;
</strong>
@end

Échec de la transaction

Anchor link to
@protocol PWPurchaseDelegate <NSObject>
<strong>// Une transaction qui a échoué
</strong>-(void)onPWInAppPurchaseHelperPaymentFailedProductIdentifier:(NSString* _Nullable)identifier error:(NSError* _Nullable)error;
@end

Promu depuis l’App Store

Anchor link to
@protocol PWPurchaseDelegate <NSObject>
// Un achat in-app est initié depuis l'App Store, et la transaction se poursuit dans votre application.
-(void)onPWInAppPurchaseHelperCallPromotedPurchase:(NSString* _Nullable)identifier;
@end

Échec de la restauration des transactions terminées

Anchor link to
@protocol PWPurchaseDelegate <NSObject>
// Une erreur s'est produite lors de la restauration des transactions
-(void)onPWInAppPurchaseHelperRestoreCompletedTransactionsFailed:(NSError * _Nullable)error;
@end