Troubleshooting Initialization
Troubleshoot common initialization issues and apply solutions.
When following steps in Getting Started or Advanced Configuration, if you don’t see a channel ID in the logs or encounter errors during initialization, review the following common problems and solutions.
Installation Errors
If you encounter errors during installation:
- Verify that you’re using a compatible version of React Native. See Requirements in Getting Started.
- Ensure all native dependencies are properly linked.
- Check that your iOS and Android projects are correctly configured.
Initialization Errors
If you encounter errors during SDK initialization:
- Verify your credentials in the Airship dashboard. The credentials used by
takeOffare your Airship project’s App KeyThe unique identifier for your Airship project. It is used to authenticate the application for API calls. and App SecretA secret used to authorize requests for low-security API calls. It is intended to be embedded in your distributed application, and as such is limited in what it can do.. To find them, select the dropdown menu () next to your project name, and then Project details. - Check that
takeOffis called correctly in your app. - Ensure both iOS and Android native modules are properly installed.
Expo: iOS Build Errors with Missing Headers
If you encounter iOS build errors with messages like 'tuple' file not found, 'iosfwd' file not found, or 'generated/RNAirshipSpec/RNAirshipSpec.h' file not found, this is typically caused by a compatibility issue between Expo and React Native’s C++ headers.
This usually happens when:
- You’re using
use_frameworks! :linkage => :staticin your Podfile - Your Expo SDK version has an incompatible
expo-dev-menudependency
To fix this issue:
Add a resolution to your
package.jsonto force a compatible version:{ "resolutions": { "expo-dev-menu": "X.X.X" // Replace with compatible version (e.g., 6.0.21) } }Or update
expo-dev-clientto the latest version.Run
npm installandpod installagain.
If you’re running Firebase alongside Airship, see Extending the FirebaseMessagingService for Android configuration.