Controllers (iOS) / Fragments (Android)
The SDK can pop controllers above your UI like product presentation pages (see Promoting In-App Purchases) or the subscription lists or any deeplink triggered by a push service.
Of course we will wait for you to tell us when we are free to cover your content by calling
isReadyToPurchase
(more details) but you might want to take control on the controller animation, position… It can be a side bar with the offer on tablets or toaster messages for the error messages.You can override the default behaviors and implement yours by using the
PLYUIDelegate
.Swift
Objective-C
Kotlin
Java
Purchasely.setUIDelegate(self)
[Purchasely setUIDelegate:self];
Purchasely.uiListener = this
Purchasely.setUiListener(this);
To change the transition, size, position … of a presented controller (
PLYUIControllerType
gives you the type of controller displayed):Swift
Objective-C
Kotlin
Java
func display(controller: UIViewController, type: PLYUIControllerType) {
// Present the controller your way
}
- (void)displayWithController:(UIViewController *)controller type:(enum PLYUIControllerType)type {
// Present the controller your way
}
override fun onAlert(alert: PLYAlertMessage) {
//TODO display alert dialog, see "Errors & alerts" page
}
override fun onFragment(fragment: Fragment, type: PLYUIFragmentType) {
//TODO display fragment as you wish in your activity
//type can be PRODUCT_PAGE, SUBSCRIPTION_LIST or CANCELLATION_PAGE
}
@Override
public void onAlert(@NotNull PLYAlertMessage alert) {
//TODO display alert dialog, see "Errors & alerts" page
}
@Override
public void onFragment(@NotNull Fragment fragment, @NotNull PLYUIFragmentType type) {
//TODO display fragment as you wish in your activity
//type can be PRODUCT_PAGE, SUBSCRIPTION_LIST or CANCELLATION_PAGE
}
Android only : We advise you to call
Purchasely.setUiListener(null)
when done to remove all references to your activity if you are not using WeakReference
Dernière mise à jour 1yr ago