checkin-team/Checkin-Android

startService fails if app is in background in AppMessagingService

shivanshs9 opened this issue · 0 comments

Crash logs:

Fatal Exception: java.lang.IllegalStateException: Not allowed to start service Intent { cmp=com.checkin.app.checkin/.Auth.DeviceTokenService (has extras) }: app is in background uid UidRecord{16eabbd u0a265 RCVR idle change:uncached procs:1 seq(0,0,0)}
at android.app.ContextImpl.startServiceCommon(ContextImpl.java:1521)
at android.app.ContextImpl.startService(ContextImpl.java:1477)
at android.content.ContextWrapper.startService(ContextWrapper.java:650)
at com.checkin.app.checkin.data.notifications.AppMessagingService.onNewToken(AppMessagingService.java:109)
at com.google.firebase.messaging.FirebaseMessagingService.zzc(FirebaseMessagingService.java:104)
at com.google.firebase.messaging.zze.run(zze.java:2)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at com.google.android.gms.common.util.concurrent.zza.run(zza.java:6)
at java.lang.Thread.run(Thread.java:764)

Relevant Code:

val intent = Intent(applicationContext, DeviceTokenService::class.java)
intent.putExtra(DeviceTokenService.KEY_TOKEN, token)
startService(intent)