Initialization failures
Init can fail for several reasons. For network, VPN/proxy, and attestation failures, call ShowModal() — it explains the reason to the player and provides a retry path. Maintenance and unsupported region are handled differently (see below), because neither has a retry path. Never silently fail.
Common init failure causes
Maintenance mode
The ZBD platform occasionally enters maintenance mode. This is surfaced as amaintenance flag on SDK responses. It is not an error.
Maintenance periods are temporary. Do not log them as errors or alert your on-call. They are expected operational events.
Reward delivery failures
Reward delivery can fail independently of initialization. The most common causes are network interruptions and maintenance mode.Full error scenario matrix
Platform differences
Test iOS and Android separately. The SDK’s attestation behavior, WebView rendering, and modal presentation can differ between platforms in ways that are not always obvious during development. Pay particular attention to:- Android back button: Handle the back button to close the modal if it’s open. See Integration.
- iOS foreground transitions: The modal may need explicit handling when the app returns from background.
- VPN detection: VPN behavior differs between iOS and Android network stacks. A VPN that passes on one platform may be flagged on the other.