Pushwoosh / pushwoosh-phonegap-plugin

Pushwoosh PhoneGap Build Plugin
Other
109 stars 139 forks source link

App crashes couple seconds after start. #279

Closed kleeb closed 6 years ago

kleeb commented 6 years ago

We have just upgraded to 7.2.3 library version of Pushwoosh. On Android 7.0 there is a critical problem:

App crashes couple seconds after startup:

02-15 13:09:26.637 24851 24906 E AndroidRuntime: FATAL EXCEPTION: AsyncTask #4
02-15 13:09:26.637 24851 24906 E AndroidRuntime: Process: com.someapp.app, PID: 24851
02-15 13:09:26.637 24851 24906 E AndroidRuntime: java.lang.RuntimeException: An error occurred while executing doInBackground()
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at android.os.AsyncTask$3.done(AsyncTask.java:325)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:354)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at java.util.concurrent.FutureTask.setException(FutureTask.java:223)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at java.util.concurrent.FutureTask.run(FutureTask.java:242)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:243)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at java.lang.Thread.run(Thread.java:761)
02-15 13:09:26.637 24851 24906 E AndroidRuntime: Caused by: java.lang.IllegalArgumentException: Error: requested job be persisted without holding RECEIVE_BOOT_COMPLETED permission.
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at android.os.Parcel.readException(Parcel.java:1688)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at android.os.Parcel.readException(Parcel.java:1637)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at android.app.job.IJobScheduler$Stub$Proxy.schedule(IJobScheduler.java:158)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at android.app.JobSchedulerImpl.schedule(JobSchedulerImpl.java:42)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at com.pushwoosh.location.c.b.a(Unknown Source)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at com.pushwoosh.location.c.b.a(Unknown Source)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at com.pushwoosh.location.c.e.a(Unknown Source)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at com.pushwoosh.location.c.a(Unknown Source)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at com.pushwoosh.location.network.b.a(Unknown Source)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at com.pushwoosh.location.network.c.process(Unknown Source)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at com.pushwoosh.location.network.c.a.a(Unknown Source)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at com.pushwoosh.location.network.b.a(Unknown Source)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at com.pushwoosh.location.network.GeoLocationServiceApi21$a.a(Unknown Source)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at com.pushwoosh.location.network.GeoLocationServiceApi21$a.doInBackground(Unknown Source)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at android.os.AsyncTask$2.call(AsyncTask.java:305)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    at java.util.concurrent.FutureTask.run(FutureTask.java:237)
02-15 13:09:26.637 24851 24906 E AndroidRuntime:    ... 4 more
wfhm commented 6 years ago

Hi,

This is a known issue, the fix will be rolled out with the next release.

kleeb commented 6 years ago

when is the next release planned?

wfhm commented 6 years ago

@kleeb We expect it to be released next week. Please note that we have to update native SDK first, therefore Cordova plugin update might take a bit longer.

wfhm commented 6 years ago

@kleeb

Could you please try adding the following permission manually to your plaforms/android/AndroidManifest.xml:

<uses-permission-sdk-23 android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

Please let us know about the results!

kleeb commented 6 years ago

Thanks @wfhm Will definitely check this out in the net days

is it somehow connected with the recent 7.2.5 release?

wfhm commented 6 years ago

@kleeb

The 7.2.5 release was a hotfix. The mentioned permission is not automatically added, therefore the only solution right now is to add it manually.

wfhm commented 6 years ago

Fixed in 7.3.1.