iOS SDK (Swift UI)
Last updated
Last updated
Please have the following handy before beginning the integration:
Application identifier generated on the Apxor dashboard for your app ()
App Bundle Id : Every app has a unique application ID that looks like com.example.myapp
. This id uniquely identifies the app on the device and also on the app store.
The list of events to setup triggers and track goals, user properties that allows to personalize messages and to target better. ()
Apxor provides you easy to use plugins for your Actions. They are:
Apxor-Core
The Core Plugin is responsible for the basic event tracking
How many of my users have clicked on the cart icon after showing them a nudge Sample Event : 'ViewCart'
APXSurveyPlugin
This Plugin helps you create contextual surveys to capture your users' feedback, ratings, etc.
An NPS survey that would ask the user to rate the app experience on a scale of 1-10.
APXRTAPlugin
This Plugin helps you create real time actions.
Show a tooltip on the cart icon with messaging "Tap here to view items"
APXWYSIWYGPlugin
The WYSIWYG Plugin allows you to preview your configured actions onto your device in real time
Casting your mobile screen to the dashboard and selecting the hamburger icon
APXPushPlugin
The Push Plugin allows you to track uninstalls and real-time serve/pause the nudges, while the app is opened
Show a campaign to users who land on the home screen and add an item to the cart.
.
If this is your first pod, run pod init
. Add the following to the corresponding target in your Podfile and run pod install
.
To Auto initialize SDK (Recommended), add the following inside your application
plist file.
Open your application's Info.plist as source code.
Copy paste the below piece of code, to create an entry for ApxorSDK.
To manually initialize SDK, call ApxorSDK.initialize
method in your Application
class
And open your application's Info.plist as source code.
Copy paste the below piece of code, to create an entry for ApxorSDK.
First, you need to configure your app to ensure there is a URL Scheme with your application's bundle identifier as the value.
If your app already has a URL Scheme with your application's bundle identifier as the value, you can skip this step.
To configure URL scheme, goto your project settings, select Targets
. Click on the Info
tab.
Select the URL Types
, and click on the +
button to add a new URL Scheme.
Add a new URL Scheme with your bundle identifier
as the value.
Your bundle identifer will be in the format, com.xxxx.xxxx
Use the image below for reference.
To use the push notifications feature, make sure the following lines exist in your application plist file under Apxor section.
To configure iOS Push notification via Apxor dashboard, you'd need to upload APNs Auth Key file along with it's ID (key ID), your Team ID, and your application's Bundle ID.
The APNs Auth Key is the best way to configure pushes, as you don't need to regenerate a certificate every year and also, this key can be used to configure Push notifications to sever of your applications (under the same apple developer account)
Things required to configure iOS Push notification:
Auth Key file
Key ID (usuallly the name of the Auth Key file)
Team ID (the 10 digit alphanumeric key)
Your app’s bundle ID (in the format com.abc.xyz)
See here on how to get these, Push notifications
Once you get those details, add the below code in your application's AppDelegate
file in the application
didRegisterForRemoteNotificationsWithDeviceToken
function.
The token can be passed in either the NSData
or NSString
format
If you haven't already used the code to Ask User for notifications permission, add the following function in your AppDelegate
file.
Lookout for the following log
Install CocoaPods, if you don't already have it. CocoaPods is a dependency manager for Swift and Objective-C Cocoa projects. It has over 95 thousand libraries and is used in over 3 million apps. CocoaPods can help you scale your projects elegantly. If you don't want to use CocoaPods, you can install ApxorSDK .
to log user properties, events and event properties.