> This page is part of the [Customer.io documentation](https://docs.customer.io). For the complete index, see [llms.txt](https://docs.customer.io/llms.txt).
> Last updated: August 28, 2026
> To take actions in Customer.io from an agent, use the [Customer.io CLI](https://docs.customer.io/ai/cli/get-started.md) or the [MCP server](https://docs.customer.io/ai/mcp/get-started.md).

# iOS 27 & UIScene support

customerio-expo-plugin 3.9.0 is ready for the scene lifecycle in Expo SDK 58. Stable Expo SDK 57 apps keep the AppDelegate path.

`customerio-expo-plugin` 3.9.0 is ready for the scene lifecycle that Expo SDK 58 generates. Expo SDK 58 is currently pre-release. Stable Expo SDK 57 apps keep the AppDelegate path and don’t need a scene-related Customer.io change.

After Expo SDK 58 is available as a stable release, use `customerio-expo-plugin` 3.9.0 and its required `customerio-reactnative` 6.9.0 peer. The plugin configures the native Customer.io bridge.

What changes on the scene path:

*   **Deep link readiness:** Register your router before routing becomes ready. With native auto-initialization, call `CustomerIO.setDeepLinkRoutingReady()` after the router is ready. With JavaScript initialization, register the router before `CustomerIO.initialize(...)`; initialization marks routing ready automatically. Cold-start notification destinations arrive as `Linking` `url` events, not through `Linking.getInitialURL()`. Expo Router apps shouldn’t add a second navigating listener.
*   **Killed-state deep links:** `handleDeeplinkInKilledState` is the legacy AppDelegate workaround for Expo SDK 53–57. The plugin doesn’t inject it on the scene path because scene routing replaces it.
*   **Live Activities:** AppDelegate tap handling moves to JavaScript. Process URLs once with `CustomerIO.liveActivities.handleWidgetUrl(path)`. Use `app/+native-intent.tsx` for Expo Router, or your central `Linking` pipeline otherwise.

Below Expo SDK 58, the plugin keeps the AppDelegate path and no change is required.

See the [iOS 27 UIScene migration guide](/integrations/sdk/ios/whats-new/ios-27-uiscene-migration/) for full steps and a verification checklist.

[GitHub project](https://github.com/customerio/customerio-expo-plugin "View the Expo SDK on GitHub")

Version

3.9.0 (Current)1.x (1.0.0-beta.17, prerelease)

©2026 Peaberry Software, Inc. [Status](https://status.customerio.com/) [Terms of Service](https://customer.io/legal/terms-of-service/) [Privacy Policy](https://customer.io/legal/privacy-policy/)

[](https://www.linkedin.com/company/customer-io)[](https://twitter.com/customerio)[](https://www.youtube.com/channel/UCkCaWdezRoa8ZyR9pEVaipA)[](https://www.instagram.com/customer.io/)
