eclipse / paho.mqtt.android

MQTT Android
Other
2.92k stars 883 forks source link

Caused by java.lang.IllegalStateException #390

Open i-m-aj opened 4 years ago

i-m-aj commented 4 years ago

Please fill out the form below before submitting, thank you!

Android API Version Bug Seen on:

Android Version Bug Seen on:

Please also check that if you have found the bug in the Release version (1.1.1) that you check that it also exists in the Snapshot (1.1.2-SNAPSHOT) before raising a bug.

Description of Bug:

Not allowed to start service Intent { cmp=com.xxxxx.xxxxxx/org.eclipse.paho.android.service.MqttService }: app is in background uid UidRecord{d313e3c u0a190 TPSL idle procs:1 seq(0,0,0)}

Console Log output (if available):

turbulator commented 4 years ago

I have the same crash. It appears on phone's startup. And only on Samsung devices and Android 9.

stack from Google Play console:

java.lang.RuntimeException: 
  at android.app.ActivityThread.handleBindApplication (ActivityThread.java:6167)
  at android.app.ActivityThread.access$1200 (ActivityThread.java:235)
  at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1768)
  at android.os.Handler.dispatchMessage (Handler.java:106)
  at android.os.Looper.loop (Looper.java:214)
  at android.app.ActivityThread.main (ActivityThread.java:6990)
  at java.lang.reflect.Method.invoke (Method.java)
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:494)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1445)
Caused by: java.lang.IllegalStateException: 
  at android.app.ContextImpl.startServiceCommon (ContextImpl.java:1666)
  at android.app.ContextImpl.startService (ContextImpl.java:1611)
  at android.content.ContextWrapper.startService (ContextWrapper.java:677)
  at org.eclipse.paho.android.service.MqttAndroidClient.a (MqttAndroidClient.java:27)
  at org.eclipse.paho.android.service.MqttAndroidClient.a (MqttAndroidClient.java:1)
  at org.turbo.beaconmqtt.broadcaster.MqttBroadcaster.a (MqttBroadcaster.java:80)
  at org.turbo.beaconmqtt.broadcaster.MqttBroadcaster.<init> (MqttBroadcaster.java:56)
  at org.turbo.beaconmqtt.broadcaster.Broadcaster.<init> (Broadcaster.java:21)
  at org.turbo.beaconmqtt.BeaconApplication.onCreate (BeaconApplication.java:46)
  at android.app.Instrumentation.callApplicationOnCreate (Instrumentation.java:1154)
  at android.app.ActivityThread.handleBindApplication (ActivityThread.java:6162)
  at android.app.ActivityThread.access$1200 (ActivityThread.java:235)
  at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1768)
  at android.os.Handler.dispatchMessage (Handler.java:106)
  at android.os.Looper.loop (Looper.java:214)
  at android.app.ActivityThread.main (ActivityThread.java:6990)
  at java.lang.reflect.Method.invoke (Method.java)
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:494)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1445)
i-m-aj commented 4 years ago

Yes it happened in oreo and up devices because its restricted to run service from background.

turbulator commented 4 years ago

Any suggestions?

i-m-aj commented 4 years ago

Dont start service from background. Use broadcast receiver

nhanv commented 4 years ago

I have same. Because MqttAndroidClient start service in background. Please fix it soon. Thanks