Android App Hibernation
Starting with Android 11, if a user does not interact with your app for a few months, the app will automatically be placed in a hibernation state by the operating system. This is the default behavior of the operating system, and it currently cannot be disabled programmatically by the app.
Hibernation Effects
App Hibernation will affect the operation of your mobile app depending on the operating system version the phone is running. These effects are summarized below.
Characteristics of device | Hibernation effects |
---|---|
Runs Android 12 or higher |
|
Runs Android 11 | Your app's runtime permissions are reset. |
Runs Android 6.0 to Android 10 | Your app's runtime permissions are reset. |
Most notably, users running Android 12 or higher will not be able to receive push notifications once their app is put into hibernation. Furthermore, if they interact with the app to remove it from hibernation, the app will continue to be unable to receive push notifications until they explicitly re-enable the notification permission in the app’s settings.
App Usage
Whenever your app is resumed, the system considers this event to be a user interaction. Therefore, the system extends the amount of time before your app enters hibernation.
On Android 11 and higher, the following behaviors are also considered to be user interactions:
The user interacts with a notification, except for dismissing the notification.
Note: If the user dismisses the notification and doesn't otherwise interact with the notification, this doesn't count as app usage.
Best Practices to Prevent App Hibernation
Since disabling App Hibernation is a decision that is ultimately up to your end-users, Rave AppArmor has a few best practices for clients to use to prevent App Hibernation from occurring:
Consider sending semi-regular Push Notifications to your app to drive people to open it. These Push Notifications don’t need to be safety-related! Push Notifications are also a great way to let your end-users know about events coming up on campus!
Advertise the main features of your app, such as Virtual Walkhome, WorkAlone, or Incident Reporting, to get your end-users to use the app in non-emergency situations.
If you are also a customer of AppArmor Alert, use alternate Alerting Mechanisms such as SMS or Email as redundancies to Push Notifications in an emergency
App Hibernation Permission Modal
To prevent app hibernation from occurring, the AppArmor Safety app will prompt the user to disable this feature within their app’s settings. The permission modal will direct the user to the correct setting on the app’s settings page, however, it is up to the user whether they want to disable this feature or not.
The “Not Now” option will dismiss the modal for a day.
Users will continue to see this modal until they hit ‘Never' or change their device’s settings
Additional Info
For more info regarding App Hibernation, please refer to the Android documentation here.