My app is not receiving push notification in Redmi phones while the app is in the background or it got killed by swiping.
So I am trying to wake the phone by WorkManage
WorkManager API will work well as documented in the Android Stock OS devices or emulator. Customised ROMs like Xiaomi, Vivo, etc. have the Battery Saver option set to "optimized" by default, and don't allow the WorkManager API as expected. Set Battery Saver to "no restrictions" and your WorkManager will run the task.
I am using version 1.0.1 and it works well with Xiaomi devices after performing the above changes for Battery Saver.
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
Add these permissions in your manifest file it may work.
Please also take a look at this Xiaomi, Vivo, Oppo and huawei restrict background services by default. After applying this solution my WorkManager also started to work.
Which version of WorkManager
are you using ? We fixed a few bugs with respect to PeriodicWork
and force-stopping of apps in alpha05
. alpha06
is out, and I recommend you try using it. If you still have the same problem, please report back on the issue tracker with a reproducible test case on the issue tracker.