Skip to content

Releases: Evernote/android-job

Version 1.2.0

06 Oct 08:31
Compare
Choose a tag to compare
  • Extract JobManager.Config class into JobConfig class to make it possible to change settings before the JobManager is created
  • Add an option to disable any specific API and not just the GCM API (only useful for testing purposes)
  • Remove deprecated methods
  • Add the startNow() method to run a job immediately respecting all constraints in Android O
  • Remove the persisted parameter, which didn't work reliable, all jobs are persisted anyway
  • Remove startWakefulService from the Job class, WakefulBroadcastReceiver is now deprecated with JobIntentService as the better option
  • Add feature to make jobs transient and to add a Bundle, see setTransientExtras(bundle)
  • Add new METERED network type
  • Add new requirements battery not low and storage not low
  • Add helper job class DailyJob to make it easier to run jobs once a day, see #223
  • Add option in JobConfig to add a logger
  • Add option in JobConfig for a job ID offset to avoid clashes with other jobs in the JobScheduler
  • Switch to elapsed real time with the AlarmManager to have a consistent behavior with the JobScheduler, see #237

(Requires target SDK 26)

Version 1.1.12

06 Oct 08:30
Compare
Choose a tag to compare
  • Handle NPE inside of JobScheduler
  • Handle 'Package manager has died' crash
  • Save the highest job ID in a pref file so that it isn't lost when no job is in the database anymore (makes debugging easier)
  • Fix rare NPE when rescheduling jobs after service has been restarted, see #234
  • Fix rescheduled periodic job although it has been canceled pre Android N, see #241

Version 1.1.11

05 Jun 10:43
Compare
Choose a tag to compare
  • Fix a race condition when canceling jobs, see #178
  • Disable the JobScheduler API if the service is disabled, see #190
  • Fix SQLiteConstraintException when rescheduling jobs, because job is already present in the database, see #176
  • Improve job result documentation, see #192
  • Prevent app ending in a crash loop, see #194
  • Fallback to an older API if the JobScheduler is null on the device
  • Don't persist jobs with the JobScheduler, if this device is weird and doesn't have the boot permission
  • List support-v4 as dependency, because it's required, see #200
  • Make Job.Params public for better test support, see #201
  • Allow to suppress the JobManagerCreateException, see JobApi.setForceAllowApi14(boolean)
  • Make SimpleDateFormat thread-local to avoid possible crash, see #208

Version 1.1.10

29 Apr 19:40
Compare
Choose a tag to compare
  • Fix a race condition when canceling jobs, see #178
  • Make it possible to reuse builder objects, this may fix SQL exceptions, see #176
  • Add JobRequest.getLastRun() returning the time when the job did run the last time, if it was rescheduled or it's a periodic job, see #141
  • Fix crash on Android 4.0.3 where SQLiteDatabase doesn't implement Closable, see #182
  • Updating wording for network type ANY to make it clearer that no specific network state is required, see #185
  • Use a copy of the platform DefaultDatabaseErrorHandler. Some manufacturers replace this causing stack overflows, see #184

Version 1.1.9

10 Apr 08:28
Compare
Choose a tag to compare
  • Improve logging by providing an option to add a custom logger
  • Fix crash when rescheduling jobs, see #164
  • Fix wrong returned network type, see #166
  • Expose failure count in the JobRequest class, see #168
  • Don't silently eat JobScheduler's limit exception
  • Make schedule() method idempotent
  • Add a fallback if removing a job from the database fails for some reason, see #145

Version 1.1.8

23 Mar 11:19
Compare
Choose a tag to compare
  • Catch wake lock crashes in all cases, fixes #153
  • Use a better execution in parallel with the AlarmManager. This may prevent a process death.
  • Use better thread names
  • List for quick boot completed broad casts, see #157

Version 1.1.7

27 Feb 21:04
Compare
Choose a tag to compare
  • Use a service to reschedule jobs and prevent a too early process death, fixes #142

Version 1.1.6

13 Feb 14:45
Compare
Choose a tag to compare
  • Reschedule jobs after an app update occurred or the Google Play Services were updated, see #135

Version 1.1.5

25 Jan 10:38
Compare
Choose a tag to compare
  • Use only back-off criteria when rescheduling jobs, see #134

Version 1.1.4

05 Jan 13:32
Compare
Choose a tag to compare
  • Expose schedule time of a job