The primary motive of this feature is to boost the delivery rate of app push notifications.
Specially for Android OS, devices are optimized/enhanced by using OEMs (Original Equipment Manufacturing) on the top of Stock Android. These OEMs restrict the apps up to certain extent so that they do not consume too much of battery and CPU and hence it is noticed that one receives less number of push notifications only from selected apps.
Android: This feature works upon scheduled job (for Android devices) that runs after exponential time interval selected from the Smartech Panel. It is a toggle feature available there which can be enabled/disabled as per the choice. If this feature is enabled, this job will start getting scheduled once the user launches your app. On execution of this job, the SDK will make a network call to an API which in return gives all the push notifications that are existing for that particular user.
iOS: In iOS, there is no such provision for background services and hence the same API mentioned above gets called when user launches your app. Based upon the response received, it will render all the push notifications which were not received by the user.
Android: On devices having Android OS version Marshmallow and above battery consumption is less than 1% due to high device optimization whereas devices having Android OS version Lollipop and below consume 2% to 3% of battery as they lack the same.
iOS: In iOS, it is less than 1% as it does not have any background job running and works only when user launches your app.
- Scheduled job as mentioned above works fine in case of most of the device except some.
- If the app is ‘Force Closed’ from the ‘App Settings’, this job will be stopped as the OS itself kills all the foreground as well as background processes.
- Push notifications will not be generated in case if user has blocked the same from the device itself.
- In case if user restarts a device, all the processes for each and every app gets killed and hence the job will get canceled.
Some Chinese OEMs provide features such as 'Battery Saver Mode' and 'App Optimization'. Please make sure to disable them to receive push notifications.