I am getting a crash (on android 7 only) when setExacctAndAllowWhileIdle in a function where I am create new alarm. I have no idea what is wrong here. And how to fix this crash.
This is my code and getting crash when calling
AlarmManagerCompat.setExacctAndAllowWhileIdle
AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
if (alarmManager != null) {
final long triggerAt = System.currentTimeMillis() + interval;
AlarmManagerCompat.setExactAndAllowWhileIdle(alarmManager, AlarmManager.RTC_WAKEUP,
triggerAt, pendingIntent);
}
This is the crash report i am getting:
Caused by java.lang.NullPointerException
Attempt to invoke virtual method 'int com.android.server.AlarmManagerService$Batch.size()'
on a null object reference
android.os.Parcel.readException (Parcel.java:1714)
android.os.Parcel.readException (Parcel.java:1661)
android.app.IAlarmManager$Stub$Proxy.set (IAlarmManager.java:246)
android.app.AlarmManager.setImpl (AlarmManager.java:680)
android.app.AlarmManager.setExactAndAllowWhileIdle (AlarmManager.java:893)
androidx.core.app.AlarmManagerCompat.setExactAndAllowWhileIdle (AlarmManagerCompat.java:223)
**com.mokapos.receiver.AlarmReceiver.setNewAlarm (AlarmReceiver.java:276)
com.mokapos.receiver.AlarmReceiver.initServices (AlarmReceiver.java:203)
com.mokapos.receiver.AlarmReceiver.onReceive (AlarmReceiver.java:196)**
android.app.ActivityThread.handleReceiver (ActivityThread.java:3363)
android.app.ActivityThread.-wrap18 (ActivityThread.java)
android.app.ActivityThread$H.handleMessage (ActivityThread.java:1800)
android.os.Handler.dispatchMessage (Handler.java:110)
android.os.Looper.loop (Looper.java:232)
android.app.ActivityThread.main (ActivityThread.java:6802)
java.lang.reflect.Method.invoke (Method.java)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1103)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:964)