Unlock content / service
On paywall displayed
When you display a paywall with Purchasely.presentation you have a closure for the result of user action PLYProductViewControllerResult with three possible values
Purchased
Restored
Cancelled\
You also have as a second argument the plan bought or restored by the user, it is set to nil if no purchase was made.
This is the preferred way to get notified when a purchase or restoration was made from a Purchasely paywall.
let paywallCtrl = Purchasely.presentationController(
for: "my_placement_id",
contentId: "my_content_id",
completion: { (result, plan) in
switch result {
case .purchased:
print("User purchased: \(plan?.name)")
break
case .restored:
print("User restored: \(plan?.name)")
break
case .cancelled:
break
@unknown default:
break
}
})UIViewController *paywallCtrl = [Purchasely presentationControllerWith:@"my_presentation_id"
contentId:@"my_content_id"
completion:^(enum PLYProductViewControllerResult result, PLYPlan * _Nullable plan) {
}];
[self presentViewController:paywallCtrl animated:YES completion:nil];Anywhere in your application
When a purchase or restoration is made, you can listen to our notification. This is the method to use in parts of your application where you wish to unlock some features after a purchase was made but you should only use it to unlock content, not to notify your server of a purchase or check the current state of user subscription.
Once the purchase is made to Apple Servers, registered in our systems, Purchasely sends a local Notification in the NotificationCenter. You can use it to unlock the content or refresh it.
You can catch it like this
And use it like that
For example, this can be done in every controller that displays premium content. That way you won't have to reload the content each time the controller is displayed unless a payment was made
Last updated
Was this helpful?