5.7 - Open a flow from an inline screen
Purchasely SDK 5.7.0 introduces major improvements to screen orchestration, display flexibility, and execution reliability.
Highlights
- Open a Flow from an inline screen
- New
Purchasely.display()API - Sequential action processing
- Flow presentation enhancements
Version per platform
Detailed changelogs are available on each platform’s GitHub repository:
🚀 Features
📺 New Display API
Purchasely.display()
Purchasely.display()A new unified API to display screens with customizable presentation modes:
fullScreenmodaldrawerpopinpush
This API improves flexibility and introduces proper error handling for safer integrations.
Enhanced openPlacement Action
openPlacement ActionThe openPlacement action now supports:
- Custom transition types
- Configurable height ratios
- Opening a Flow directly from an inline screen
This enables more advanced screen compositions and contextual Flow triggering.
🔗 Sequential Actions
Screen actions are now processed sequentially instead of concurrently.
This prevents race conditions, ensures thread-safe execution, and allows multiple actions to be safely attached to the same button.
🎨 Flow & Presentation Enhancements
Flows now support non-dismissible modal and drawer transitions, allowing you to:
- Disable swipe-to-dismiss
- Block back navigation when required
This provides stronger control over critical conversion flows.
🍎 iOS
✨ Improvements
-
StoreKit settings optional
ThestorekitSettingsparameter in thestart()method is now optional. -
Improved deeplink handling
Enhanced debugging support and better Universal Link format compatibility.
🐛 Bug Fixes
- Navigation bar display and transition fixes
- Resolved potential crashes on older iOS versions
- Improved stability of action execution
🤖 Android
⚠️ Breaking Changes
minSdk raised to 23
minSdk raised to 23As announced in 5.6.0, the minimum supported Android SDK version is now: minSdk 23 (Android 6.0)
This change follows updates in AndroidX dependencies.
Please ensure your application configuration matches this requirement.
✨ Features & Improvements
🎨 Flow & Presentation
- Programmatic close bypasses interceptor
closeAllScreens()now bypasses the paywall action interceptor when triggered programmatically.
💳 Billing
- Google Play Billing version detection
The SDK now:- Detects the app’s Play Billing Library version
- Warns about potential conflicts with v7+
- Applies a 30-second timeout to prevent indefinite blocking caused by version mismatches
⚡ Performance
- ~25% faster paywall rendering
Rendering optimizations significantly reduce paywall display time.
📦 Dependency Updates
- minSdk: 23
- Kotlin: 2.2.21 (K2 compiler)
- OkHttp: 5.3.2
- Retrofit: 3.0.0
- Coil: 3.3.0
- Media3 / ExoPlayer: 1.9.0