Skip to main content

Troubleshooting

Expo Router

When you load the first screen in your extension, you may see an Unmatched Route error. In this case, redirect to the correct screen within a custom unmatched route screen.

Debugging

You can view your extension's settings in the iOS Settings app: Settings > Safari > Extensions. If you want to debug your extension, you can use Safari's Web Inspector. To enable this, open Safari, go to Safari > Preferences > Advanced and check the box next to Show Develop menu in menu bar. Then, in the Safari menu bar, go to Develop > Your Device Name > popup.html.

Using a physical device

When developing on a physical device, you'll need to set the EXPO_PUBLIC_SAFARI_EXTENSION_HOSTNAME environment variable to your computer's IP address. EXPO_PUBLIC_SAFARI_EXTENSION_HOSTNAME defaults to localhost, which won't work on a physical device.

EXPO_PUBLIC_SAFARI_EXTENSION_HOSTNAME=10.50.131.40
EXPO_PUBLIC_SAFARI_EXTENSION_PORT=8081

Note: If you're building with EAS, set these env variables in your eas.json as well. See more here.

Using a Custom Port

The default port for the development server is 8081. If you are using a different port, you can specify the EXPO_PUBLIC_SAFARI_EXTENSION_PORT environment variable to use a different port.

Add this to your .env file:

EXPO_PUBLIC_SAFARI_EXTENSION_PORT=8082

Note: If you're building with EAS, set this env variables in your eas.json as well. See more here.

Limitations

Can't use @expo/vector-icons