The library provides a number of advanced configuration features that can be controlled with the
The configurations can be set simply by using the AccengageConfig.plist you've added to your project, or at runtime using the exposed properties of the
ACCConfiguration object. See the
ACCConfiguration documentation for the full list of configuration options.
The IDFA (Identifier for Advertisers), is automatically collected by the library. Note that you can disable the IDFA collection by setting the property to
It's not required to implement the notification-related delegate methods. The library can intercept the UIApplicationDelegate and the UNUserNotificationCenterDelegate messages and forward them to your original delegate.
This should be compatible with the majority of application use cases, but if you prefer, you can disable this behavior.
If you choose to disable the automatic integration, you will need to implement all notification-related
UNUserNotificationCenterDelegate methods. See the Push documentation for more details.
Depending on your privacy rules, you can decide to choose the restricted tracking mode which disables the collection of certain device data such as connection type, carrier name, local date and jailbreak state.
Note that if you use the restricted mode, some advanced targeting features may not be available. This restriction is not recommended for most integrations.
The library provides automated session management. This value indicates how long (in seconds) the app may be in the background before starting a new session upon resume. A default implementation has a session timeout period of 5 minutes. If the app remains in the background for longer than the session timeout period, the next time it's opened a new session will be started.
Each new session equals to a new application visit which means that new server calls are made.
It is for this reason that we recommend that you keep the session timeout period set to 5 minutes.
Delay SDK Launch
If you prefer to start the SDK with a delay (e.g. as a result of a user action), you'll need to pass the launch options information to the SDK. This information is provided by the system in the didFinishLaunchingWithOptions callback and should be set using the launchOptions property of the ACCConfiguration object.
Custom notification sounds
You can specify a custom sound, that iOS will play when it receives a local or remote notification for your app. For more details, you can consult Apple's documentation.
Remember that the default sound is played when:
- The sound file is not found.
- The sound is longer than 30 seconds.
- The data format is invalid. Accepted data formats are: aiff, wav, or caf.
To add the sound file to your project, you can simply drag and drop it to your resource folder. Make sure you check the box Copy items if needed.
In the Accengage dashboard, you can easily specify this sound when composing a push message by selecting "custom" in the sound section, and enter the file name with its extension (customsound.wav for instance).
Prefer a short file name.
Configure interactive notifications
Interactive notifications give the user a quick and easy way to perform relevant tasks in response to a notification. Instead of the user being forced to launch your app, the interface for an actionable notification displays custom action buttons that the user can tap. When tapped, each button dismisses the notification interface and forwards the selected action to your app for immediate handling. Forwarding the action to your app avoids the need for the user to navigate further in your app to perform the action, thereby saving time.
A set of default notification categories is provided by Accengage. If you want to add more categories for interactive notifications, you should call the
setCustomCategories: before registering for push notifications:
If you would like to handle custom categories and buttons, you must declare them in the Accengage Dashboard (Settings > Settings > Categories (Buttons)). See our User Guide for more details.