Android phones have a different architecture for handling background execution of applications, which evolves with every new Android version.
Android processes applications running in the background and those running in foreground separately. But this causes quick draining out of the battery of Android phones. In the earlier versions of Android, there were no restrictions on the applications running in the background.
With the later versions, Android has the capability to stop applications from running in the background so that resource and memory usage is based on the need.
Until MiCollab 8.1.x, Android clients were using the exception Ignore Battery Optimization with the user's permission for receiving events from MiCollab server. However, with MiCollab 9.0 onwards, the Android client, in compliance with Google recommendations, drops the Ignore Battery Optimization exception and runs the FCM Push Notifications to keep receiving events from MiCollab server. This way, MiCollab Android client can receive events even when an application is not running, which was not possible with the earlier MiCollab 8.1.x clients.
Following is a list of some of the best practices and the Android settings that a user can configure to keep MiCollab Client running for a longer time.
For Android phones running the Lollipop version or later versions, the Power Saving Mode helps the phone user save battery power.
Usually, it is recommended that users turn on the Battery Saving Mode when the battery charge goes below 15%, which helps keep the phone alive for a longer duration. However, Power Saving Mode or Battery Saving Mode disables an important feature of the phone, which is data syncing and closes all your favorite applications aggressively. A user should disable the power saving mode using the steps shown on a Samsung device as listed below.
Note: Although most of these settings are by default provided by Android, some of these are modified by OEMs on their devices. Therefore, UI settings and options may not be the same for all devices.
Users can opt to whitelist the MiCollab Client app in the Battery saving or Power Saving mode settings, instead of completely turning off the battery optimization for all apps. This prevents closing the MiCollab Client app for battery saving by Android.
Steps to perform the whitelisting settings are shown in the screenshots below:
Most of the phone and battery optimizing apps close all the background processes for freeing up RAM and reduces the load on the phone. This may boost the phone speed, but as a result, you will find your favorite apps getting closed more frequently.
Users can add the MiCollab Client app in the whitelist or ignore-list of apps, on which task killer apps do not apply restrictions. If whitelisting does not resolve the issue, then uninstall such optimizer apps. See the FAQ or help section of these apps to find out how to whitelist specific apps.
Screenshots for whitelisting the MiCollab Client in the Advanced Task Manager app are given below.
Keeping a fewer apps running in the background will reduce the chances of Android closing the MiCollab Client.
Frequent interactions with MiCollab Client will make the MiCollab app one of higher priority in the task list and thereby it will reduce the chances of Android closing MiCollab Client to reclaim device resources. Android closes applications that are in LRU task list (Least Recently Used list) before closing those of higher priority in the task list.
By following the above-mentioned best practices, users can keep its MiCollab Client running for most of the time.
Notifications on an Android phone may be delayed by up to 15 minutes, and sometimes they do not even reach the device until the user opens the MiCollab Client. This can be prevented by making changes to the settings on the user’s device. This section describes end-user settings for troubleshooting notification-related issues on Android devices.
Following are the primary reasons for which notification delays occur:
We have investigated the above scenarios with the help of a Samsung device to guide a user on how to enable and disable the feature or whitelist MiCollab Client.
If you receive notifications as soon as you unlock your phone screen, then there is a chance that the setting is such that your Wi-Fi gets disabled when your phone goes to sleep mode. This setting is suitable for saving battery life, but it is not a preferable option because it comes at the cost of data syncing.
To change this setting:
This keeps Wi-Fi on when the phone goes to sleep mode because of which notifications are shown on time.
While the Power Saving mode is enabled, no app can sync data in the background to keep the user updated; because of this, the user does not receive any notifications. Users should not keep the Power Saving mode enabled all the time. They should enable it only when the battery charge is low and when they are not expecting any important messages.
Do not close the MiCollab client app from recent history by swiping (methods to close an app may differ on different Android versions). Android treats apps closed in this manner as unwanted apps killed by the user and stops delivering notifications to such apps.
Most of the phone and battery optimizing apps close all the background processes for freeing up RAM, which in turn, lessens the load on the phone. This may boost the phone speed but leads to delayed or no notifications from MiCollab Client.
User should try to whitelist the MiCollab Client app from optimizations, so that Android would not restrict the MiCollab app from using background data and allows it to keep running in the background as long as possible.
If whitelisting is not available for a feature, then disable the respective optimization to ensure that MiCollab Client keeps working in the background.
Applications need to sync data in the background for receiving push notifications.
Go to the Application Information section of MiCollab Client and enable background activity and data restrictions.
Users must ensure that the MiCollab app is enabled to receive notifications.
Ensure that the app-specific settings are specified based on priority.
For the MiCollab app, always set the data usage to Unrestricted, so that the app always keeps running.
Almost all the messaging apps in Android phones use Firebase Cloud Messaging (FCM) service to send push notifications. A user’s phone must maintain a stable connection with the FCM service to ensure that the apps receive timely notifications.
For this purpose, the phone will send a network packet called heartbeat every few minutes to ensure that the device is connected and is able to receive notifications. The packet interval is 15 minutes for the Wi-Fi connection, and 28 minutes for a mobile data connection.
The problem with this setting is that most routers and carriers disconnect from an inactive port after a few minutes of inactivity, usually 5 minutes, and therefore, if the device does not receive a notification within 5 minutes, then the connection with the device is terminated. The device does not receive any notifications until another packet (heartbeat packet) is sent, and a connection is made.
To solve this problem, the frequency of sending the heartbeat packets must be increased.
A free app called Push Notification Fixer enables users to do this. After installation, this app displays two options: Mobile heartbeat interval, and Wi-Fi heartbeat interval.
By default, both options are set to 5 minutes, which is perfect because most connections usually timeout after 5 minutes or more. Users’ needs to tap the Apply button to apply this heartbeat interval settings, and the device should start receiving timely notifications.
Increasing the heartbeat interval impacts the overall battery timing of the device. However, the impact is very minimum, and the device would not see any noticeable difference in battery time after installing this app. To switch back to the default heartbeat interval, users can either uninstall the app or reset the heartbeat interval to the default values right from the app.