2 min read

Airship

Last Updated - Platform 24.0 - SDK 19.0

The PoqAirship integration wraps the Airship SDK allowing it to be plugged into the PoqSDK to enable remote notifications driven by Airship. This also includes the Airship Inbox and Preference Center, which work with the Account badges, and are styled to match the rest of the app.

Set up

https://github.com/poqcommerce/Poq.iOS.Airship.git

  1. Make sure the app is set up in the Airship dashboard.
  2. Add the PoqAirship framework from the URL above to your project. How?
  3. Register the integration in your AppDelegate.swift.
import PoqAirship
class AppDelegate: BaseAppDelegate {
override func setupModules() {
PoqPlatform.shared.addModule(PoqAirship())
}
}
  1. Ensure you add an AirshipConfig.plist from your Airship account to the app.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>developmentAppKey</key>
<string></string>
<key>developmentAppSecret</key>
<string></string>
<key>productionAppKey</key>
<string></string>
<key>productionAppSecret</key>
<string></string>
</dict>
</plist>

Notifications

Airship can be set up as a single 'Live' project or with an additional 'Test' project. When the app is being run via Xcode it will connect to the 'Test' project. When the app is archived for any type of distribution, Xcode switches the app to connect to the 'Live' project.

A developer will need to make sure the Airship projects are set up with your Apple Account APNs Key. Use the existing key; there should only be 1 APNs key that should be shared by all apps in that account.

Developer Mode

Airship will continue to work against the same projects as the live app in developer mode. Whilst it's less of an issue for Airship, this does means that any fake purchase revenue from development environments will be sent to Airship as if it was live revenue.

Environment

On iOS an Environment:{id} tag is added to segment the audience by 'AppConfig' where {id} is replaced with the config identifier.

History

  • 11.0 (Mar 23): Release for Poq SDK 19 (v24) adopting the new analytics layer.
  • 10.1 (Jan 23): Added Airship Automation to fix In-App messages.
  • 10.0 (Nov 22): Release for Poq SDK 18 (v23) with environment tagging for the App Switcher.
  • 9.1 (Jan 23): Added Airship Automation to fix In-App messages (CP).
  • 9.0 (Apr 22): Release for Poq SDK 17 (v22) with lots of new features.
    • Added Airship Inbox and Preference Center UI.
    • Reworked AbandonedCart and LoggedIn tags to be out of the box.
    • Reworked to forward all events to Airship.
  • 8.0 (Nov 21): Release for Poq SDK 16 (v21) using Airship v16 (major upgrade).
  • ...
  • 5.0 (Nov 20): Release for Poq SDK 13 (v18) using SPM and Airship v14.
  • 4.0 (Sep 20): Release for Poq SDK 12 (v17) using Airship v13.5.
  • 3.2 (Jul 20): Release for Poq SDK 11 (v16).
  • 3.0 (May 20): Release for Poq SDK 10 (v15) and adopt Airship v13 rebrand.
  • 2.1 (Oct 19): Release for Poq SDK 9 (v14) using UrbanAirship v12.
  • 2.0 (Sep 19): Release for Poq SDK 8 (v13).
  • 1.0 (Jun 19): Initial release for Poq SDK 6 (v11) using Carthage and UrbanAirship v10.