e46393e04b94b7c583042b259ac935d00af9b640 |
|
29-Jul-2016 |
Tony Mak <tonymak@google.com> |
We should registerContentObserver with app's user id Change-Id: Icef7a71f1773c102b766625271ed0156d6c59d77 Fix: 30464189
/frameworks/base/services/core/java/com/android/server/job/controllers/ContentObserverController.java
|
4b425712c6a777148af767cb30240d632c51f55b |
|
28-Jun-2016 |
Christopher Tate <ctate@google.com> |
Fix #29737133 : content-trigger jobs not running properly When removing the ContentObserver wrapper from our internal bookkeeping we were using the wrong key. That led to future re-registrations thinking they were reusing a currently- registered observers, but instead never getting onChange() notifications. Change-Id: Id3111db057ae63194049d7d48d45b75be6bb0000
/frameworks/base/services/core/java/com/android/server/job/controllers/ContentObserverController.java
|
121e1645d1396b47f0fefa978f8c77d2c4c6c968 |
|
22-Jun-2016 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #29545190: JobScheduler ContentUri NOTIFY_FOR_DESCENDANTS flag... ...isn't respected if previous job was scheduled with same URI Change-Id: Ib04f6d7cf72e7efc8e84c1a759e91ba520eda139
/frameworks/base/services/core/java/com/android/server/job/controllers/ContentObserverController.java
|
e9a988caca733d2f292991a52a0047685a69812f |
|
28-May-2016 |
Dianne Hackborn <hackbod@google.com> |
Work on issue #28942589: Tune job scheduler We now have a new settings key that provides all of the existing tuning parameters, plus some newly redone ones for dealing with different memory levels. Changed the minimum batching for overall jobs from 2 to 1, so we will never get in the way of immediately scheduling jobs when the developer asks for this. We should now be able to rely on the doze modes to do better batching of jobs for us when it is really important. Also work on issue #28981330: Excessive JobScheduler wakeup alarms. Use a work source with scheduled alarms to blame them on the app whose job they are being scheduled for, and add a check for whether a job's timing constraint has been satisfied before considering it a possible candidate for the next alarm. (If it is satisified, the time is in the past, so we should not schedule an alarm for it.) Finally clean up a bunch of the dumpsys output to make it easier to understand. Change-Id: I06cf2c1310448f47cf386f393e9b267335fabaeb
/frameworks/base/services/core/java/com/android/server/job/controllers/ContentObserverController.java
|
2c4b8f9f11cce04ac246f2335d39243641c26b83 |
|
11-May-2016 |
Christopher Tate <ctate@google.com> |
Fix iterator double-advance in ContentObserverController Bug 28725391 Change-Id: I1994e46645dbf716f3ef5d12f7d4833264e6937a
/frameworks/base/services/core/java/com/android/server/job/controllers/ContentObserverController.java
|
ef3aa6ee53c5e4f1c50dd5a9b5821c54e449d4b3 |
|
30-Apr-2016 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #28477006: Add small event log to job scheduler Added. Also fixed dumpsys output when filtering, to apply the filter to (almost) all of the output. Change-Id: Iafb446599ad8fddbe8a766784deff618a6cfdbb7
/frameworks/base/services/core/java/com/android/server/job/controllers/ContentObserverController.java
|
8db0fc15b85c6501a0418b17edee2d9c447b408a |
|
12-Apr-2016 |
Dianne Hackborn <hackbod@google.com> |
More work on issue #26390151: Add new JobScheduler API... ...for monitoring content providers We now have some delays before reporting URI changes, to allow them to batch together. Also clean up debug output, and fix some issues with how we were managing the content observer state. And while I am here, fix the device idle and app idle controllers to no longer maintain their own list of jobs, but just directly iterate over the JobStore. Change-Id: If3fdff23c00c2f1b99901a9be096d851562d3439
/frameworks/base/services/core/java/com/android/server/job/controllers/ContentObserverController.java
|
141f11c82a2dbf042833f75aeae6f028e8ae2084 |
|
06-Apr-2016 |
Dianne Hackborn <hackbod@google.com> |
More work on issue #26390151: Add new JobScheduler API... ...for monitoring content providers - Improve media provider change reporting so that observers can avoid spurious reports of the top-level content directory changing. - Fix a bug where collected content changes while a job was running were not being properly propagated to the next job. Change-Id: I29e3c2960e6fec75b16ee3ee6588d47342bf8c75
/frameworks/base/services/core/java/com/android/server/job/controllers/ContentObserverController.java
|
b0001f6fb1383d9824c2733896b0b348e7f77240 |
|
16-Feb-2016 |
Dianne Hackborn <hackbod@google.com> |
Remove internal locking from JobStatus. Now all state of JobStatus is implicitly protected by the lock of whoever is using it -- in this case the global lock for the JobSchedulerService. This allows us to remove all of the atomic variables and just replace those with a simple bit field. The required constraints for a job are now statically defined once a JobStatus is created, and don't change. (They wouldn't change before, but now this is absolutely specified to be the case.) This required tweaking the constructors a bit so that the earliest and latest run times are computed as part of the core class initialization. Also clarified methods on StateController that are called with the lock held, and took advantage of that in the various controllers to not now redundantly re-acquire the lock. Change-Id: I595c5e7d1bff1bd2ff906d612581af82878a25ee
/frameworks/base/services/core/java/com/android/server/job/controllers/ContentObserverController.java
|
33d31c5b70c7d056e799e34bb6eccbe6939714ea |
|
16-Feb-2016 |
Dianne Hackborn <hackbod@google.com> |
Simplify job scheduler service locking. Unify all locks to just one lock protecting the entire service. There is really no need for more complicated locking -- there is nothing in the code that can take a long time to complete. And having a single lock will allow various parts of the code to be much simpler and easier to maintain. This is just the first step of the change, switching all of the locking to use one lock. With this done, we can now start simplifying the code. For example, JobStatus no longer needs to do any locking (or have atomic variables and such), it can just rely on its callers holding the global service lock. Change-Id: I502916ed7f2994b601750c67a59a96b1a4e95c6d
/frameworks/base/services/core/java/com/android/server/job/controllers/ContentObserverController.java
|
1a30bd9b13fd127d9bbfdc5fd4cb2f80ab7ece21 |
|
11-Jan-2016 |
Dianne Hackborn <hackbod@google.com> |
Add and implement JobScheduler content observer APIs. Allows one to schedule jobs to run when content URIs change, and find out what changed when the job executes. This required adding a new API to StateController to tell it when we are about to start executing a job, so we can transfer the currently collected changes out of its internal state to fill it in to the JobParameters. Also some additional dumpsys debug output to help understand what is going on in the job scheduler. Change-Id: I91f51b226ff4add7a271a8333beffa5e86c7bf18
/frameworks/base/services/core/java/com/android/server/job/controllers/ContentObserverController.java
|