Install & Setup the Capacitor Plugin

How to install the Airship Capacitor plugin.

Requirements

  • Capacitor 5.0.0 or higher
  • iOS 15+ (Xcode 16+)
  • Android API 23+

Setup

Install the plugin

npm install @ua/capacitor-airship
npx cap sync

Initialize Airship

Before you can access any of the module’s API, the Airship module needs to be initialized.

This can be accomplished by calling takeOff when the device is ready with the proper config or by providing plugin config in the capacitor.config.json file.

Calling takeOff
// TakeOff
await Airship.takeOff({
  production: {
    appKey: "<APP_KEY>",
    appSecret: "<APP_SECRET>"
  },
  development: {
    appKey: "<APP_KEY>",
    appSecret: "<APP_SECRET>"
  },
  inProduction: true, 
  site: "us", // use "eu" for EU cloud projects
  urlAllowList: ["*"],
  android: {
      notificationConfig: {
          icon: "ic_notification",
          accentColor: "#00ff00"
      }
  }
})
Using capacitor.config.json
{
   "appId":"com.example.plugin",
   "appName":"example",
   "bundledWebRuntime":false,
   "webDir":"dist",
   "plugins":{
      "SplashScreen":{
         "launchShowDuration":0
      },
      "Airship":{
         "config":{
            "default":{
               "appKey":"<APP_KEY>",
               "appSecret":"<APP_SECRET>"
            },
            "site":"us",
            "urlAllowList":[
               "*"
            ],
            "android":{
               "notificationConfig":{
                  "icon":"ic_notification",
                  "accentColor":"#00ff00"
               }
            }
         }
      }
   },
   "server":{
      "androidScheme":"https"
   }
}
}

Takeoff can be called multiple times, but the config passed in takeOff won’t be applied until the next app init.

For a complete list of configuration options, see the AirshipConfig reference.

Test the integration

After completing the setup, verify your integration:

  1. Build and run your app on your iOS or Android device/simulator/emulator.
  2. Check the console output for Airship channel creation:
    • iOS: Look for a log message in Xcode console: Channel ID: <CHANNEL_ID>
    • Android: Look for a log message in logcat: Airship channel created: <CHANNEL_ID>
    • The channel ID confirms successful SDK initialization.
    • For more detailed logging, see Logging.

If you see the channel ID in the console and no errors, your integration is successful.

Next steps

If you don’t see a channel ID or encounter errors during initialization, see the Troubleshooting guide for common problems and solutions.