History log of /frameworks/base/core/java/android/content/SyncManager.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
8b2c3a14603d163d7564e6f60286995079687690 12-Nov-2012 Jeff Sharkey <jsharkey@android.com> Useful annotations for code documentation.

Bug: 6537978
Change-Id: I806c3c09e3255f8789455f13bf37c1dde2a93f1f
/frameworks/base/core/java/android/content/SyncManager.java
cd75706117432e33d11639e675bcff50479a6bb9 20-Oct-2012 Amith Yamasani <yamasani@google.com> System server should always send broadcasts to a specific or all users

Bug: 7368245

Log a warning if the system process calls unqualified sendBroadcast()
and other calls.

As a result of the logging above, found a few more method calls such as
bindService() that would benefit from being more explicit to avoid
future confusion and reduce the log warnings.

Change-Id: I17f15c8be9adf7becd456d6abbab606f19befdbf
/frameworks/base/core/java/android/content/SyncManager.java
db6a14cc85cede0769735fdac4da70766989a3ce 18-Oct-2012 Amith Yamasani <yamasani@google.com> Fix crashes when quickly adding and removing users

Make USER_REMOVED an ordered broadcast and send it before the user's
state is completely removed from the system. This gives services the
opportunity to clean up their state, while still having access to the
user's directory and UserInfo object (such as serial number).

Tell SyncManager to skip over dying/partially created users.

Improve UserManager tests, waiting for users to be removed fully.

Bug: 7382252

Change-Id: I93cfb39c9efe6f15087bf83c569a2d154ef27168
/frameworks/base/core/java/android/content/SyncManager.java
e4996bbd519a088927180c2eed2941fe59a4cd40 17-Oct-2012 Jeff Sharkey <jsharkey@android.com> Defer more Account actions until user starting.

Instead of explicitly scanning OWNER accounts, move to using the
"user starting" call path for consistency.

Bug: 7358086
Change-Id: Ied3289a074aafa48259d828db1d68804912589b3
/frameworks/base/core/java/android/content/SyncManager.java
a706e2fd0059b1bb86c487722dbc9fc0fda9c980 16-Oct-2012 Jeff Sharkey <jsharkey@android.com> Lock SyncQueue when user starting, copy RSC list.

Document SyncQueue locking policy and protect in onUserStarting()
and clearAllBackoffs(). Return copy of ServiceInfo list from
RegisteredServicesCache instead of exposing locking externally.

Bug: 7357776, 7352537
Change-Id: I6a32ca98a355b639d4207a88bde572179beae359
/frameworks/base/core/java/android/content/SyncManager.java
8f55d112983aa922687de7e3581f73913c06e37a 11-Oct-2012 Jeff Sharkey <jsharkey@android.com> Database cleanup needs to happen for all users.

Bug: 6970084
Change-Id: I9a6f1cbaf095b245ec9707a90c518256e0aa1f5f
/frameworks/base/core/java/android/content/SyncManager.java
9535c915b61c43d7b4bdb2b35d53774cfb16bfbb 11-Oct-2012 Amith Yamasani <yamasani@google.com> Fix a runtime restart when cycling between 4 users

Some refactoring in Sync Manager caused mUserManager to be initialized too late.
Make sure this is initialized in the constructor now.

Bug: 7328386
Change-Id: Ic67915e172c3b8ef368852147667287e38c0213b
/frameworks/base/core/java/android/content/SyncManager.java
6eb9620ff289105c3fc4a1be28a8eebb17d044e0 10-Oct-2012 Jeff Sharkey <jsharkey@android.com> Include all accounts in dumpsys.

Allow accounts to be loaded when a user is stopped, but always
validate accounts against a freshly queried PMS cache when the user
actually starts.

Bug: 7276595
Change-Id: I0382064c73123c243bc6f6e5da8fc3d0a8b73442
/frameworks/base/core/java/android/content/SyncManager.java
6ab72d74b86e5f4ec3c3909366fd46c225a66bd7 09-Oct-2012 Jeff Sharkey <jsharkey@android.com> Make RegisteredServicesCache multi-user aware.

RegisteredServicesCache is used to track account authenticators and
sync adapters, which can vary based on user. This change requires
that callers now provide a userId when making cache requests. It
continues persisting into a single file for now, which is keyed based
on UID.

It now watches for package broadcasts from all users, and scans
packages on-demand. It changes cache callers to provide a relevant
userId, and evicts cache entries when users are stopped.

Changes SyncManager to only work with accounts from running users,
only kicking off pending syncs once a user is started.

Bug: 7276595, 7316150
Change-Id: I79466a84aa69aa37e4bd9691c5d6221d3662ff29
/frameworks/base/core/java/android/content/SyncManager.java
625239a05401bbf18b04d9874cea3f82da7c29a1 27-Sep-2012 Jeff Sharkey <jsharkey@android.com> Migrate more Secure settings to Global.

Migrate networking, storage, battery, DropBox, and PackageManager
related Secure settings to Global table.

Bug: 7232014, 7231331, 7231198
Change-Id: I772c2a9586a2f708c9db95622477f235064b8f4d
/frameworks/base/core/java/android/content/SyncManager.java
d648a605e8249219ce60ac93e074758ebb6fc4ab 27-Sep-2012 Amith Yamasani <yamasani@google.com> Fix sync problems when setting up a new user and account

Bug: 7197445

The listener on AccountManager is not sufficient since it only triggers when
primary user's accounts change.

Switch to watching for LOGIN_ACCOUNTS_CHANGED_ACTION for all users.

Change-Id: I63f526aebd70f0ad777490f3e0b6e6894220d26c
/frameworks/base/core/java/android/content/SyncManager.java
8e28555f6d4ea557ba79e3d411ea46e5a0788b8f 18-Sep-2012 Alon Albert <aalbert@google.com> Skip operations for users who are not running

Listen to ACTION_USER_FOREGROUND and check alarms when it happens
Also add user logging to dumpsys

Bug: 7115753
Change-Id: Idb7881b62e31813feec684db8ff2e9d22e65a0f9
/frameworks/base/core/java/android/content/SyncManager.java
4120375d46091df8527bb701882e056fbb0e6b06 31-Aug-2012 Dianne Hackborn <hackbod@google.com> Remove Binder.getOrigCallingUid().

Replaced all remaining places that used it with explicit user
specification.

While doing this, I ran into stuff that was creating PendingIntent
objects (that now need to specify the explicit user they are for),
which are also posting notifications... but have no way to specify
the user for the notification.

So the notification manager in the system process now also gets a
formal concept of a user associated with the notification, which
is passed in to all the necessary aidl calls. I also removed the
old deprecated aidl interface for posting/cancelling notifications,
since we now always need a user supplied.

There is more work that needs to be done here, though. For example
I think we need to be able to specify USER_ALL for a notification that
should be shown to all users (such as low storage or low battery).
Along with that, the PendingIntent creation needs to be tweaked to
be able to handle USER_CURRENT by evaluating the user at the point the
pending intent is sent.

That's for another change, however.

Change-Id: I468e14dce8def0e13e0870571e7c31ed32b6310c
/frameworks/base/core/java/android/content/SyncManager.java
2a00329c6d55c6cd9166e01963d7410e95d80d21 15-Aug-2012 Amith Yamasani <yamasani@google.com> UserHandle to UserSerialNo mapping

Use AtomicFile for usermanager files.

Added a MANAGE_USERS permission that apps (signature permission) can use
to create/query/modify/remove users.

Change-Id: I5cf232232d0539e7508df8ec9b216e29c2351cd9
/frameworks/base/core/java/android/content/SyncManager.java
f02b60aa4f367516f40cf3d60fffae0c6fe3e1b8 16-Aug-2012 Dianne Hackborn <hackbod@google.com> Rename UserId to UserHandle.

This is the start of turning this into a formal public API.

Change-Id: I5786d2c320f1de41a06ed5d0f65adb68967287a0
/frameworks/base/core/java/android/content/SyncManager.java
258848d2ae04f447ff1c18023fa76b139fcc0862 11-Aug-2012 Amith Yamasani <yamasani@google.com> User Manager service to manage users and query user details

Moved a bunch of methods from PackageManager to UserManager.

Fix launching of activities from recents to correct user.

Guest creation APIs

Change-Id: I0733405e6eb2829675665e225c759d6baa2b708f
/frameworks/base/core/java/android/content/SyncManager.java
dc47556cb37b6f25faceb5eb97cef60d384b55fb 05-May-2012 Fred Quintana <fredq@google.com> fix expedited syncs. there were times when an expedited sync wouldn't
correctly preempt non-expedited syncs

Change-Id: Ia88ce6504c06d7c8e50e40362e8bf2b85bd0934b
/frameworks/base/core/java/android/content/SyncManager.java
9766937ba57ca80977a68c681fdd4e46b6e1fd81 12-Apr-2012 Ashish Sharma <ashishsharma@google.com> Merge "Synchronize/align periodic sync alarms based on a random per device seed value."
69d95de53bc82e6c23c64ad566e428fbefae0543 12-Apr-2012 Ashish Sharma <ashishsharma@google.com> Synchronize/align periodic sync alarms based on a random per device seed value.

Removes duplicates SyncHandler.MESSAGE_CHECK_ALARM messages from the queue.

Change-Id: Ib29a06da904cebdd45ee05c9d9a6bf00b72100eb
/frameworks/base/core/java/android/content/SyncManager.java
f29f2369cf4e1de090c985ed53d3f5e59535986a 06-Apr-2012 Amith Yamasani <yamasani@google.com> Fix a race condition in SyncManager.onAccountsUpdated()

Get the full list of accounts from AccountManagerService in one shot
instead of getting them per user.

Bug: 6263091

Change-Id: I488f24749a96281ef1e2a620820399c97f471024
/frameworks/base/core/java/android/content/SyncManager.java
135936072b24b090fb63940aea41b408d855a4f3 23-Mar-2012 Amith Yamasani <yamasani@google.com> User management and switching

Broadcast intents that get sent out when users are added/removed/switched.

More work on generating user-specific information in package manager queries.
APIs to update user name and query a user by id.
Removed Package.mSetStopped and mSetEnabled, since they're not user specific.

User removal:
- Cleanup ActivityManager, PackageManager, WallpaperManager, AppWidgetService
and AccountManager.
- Shutdown processes belonging to the user.

Don't show vibrate option in long-press power if there's no vibrator.

Lock the screen when switching users, to force unlocking.

Change-Id: Ib23a721cb75285eef5fd6ba8c7272462764038fa
/frameworks/base/core/java/android/content/SyncManager.java
04e0d265e3385e9d1fbc35e43c4e8caffbbe3290 14-Feb-2012 Amith Yamasani <yamasani@google.com> Make SyncManager and AccountManagerService multi-user aware.

AccountManagerService
- Maintain multiple account lists, one per user
- Keep multiple databases of accounts
- Account db moved to /data/system/users/<userid>/

SyncManager
- SyncStorageEngine keeps track of multiple users' accounts.
- SyncQueue maintained as a single instance, queueing requests from
multiple users.
- Changed some methods to take userId arguments
- Removed some deadc0de
- Store the userId in the SyncOperation, so we know which provider
instance to bind to when queued operations are processed.

ContentService
- Pass along the userid to sync manager calls.

ActivityManagerService:
- Fixed a bug in cancelIntentSender
- Don't bring other user's task forward when resetting tasks.

Updated tests

Change-Id: If317340ef68e902787aa3f5ceb4cf96f14aea695
/frameworks/base/core/java/android/content/SyncManager.java
27096822e2da828e0f41c0337cf6f0f11e5bace5 12-Jan-2012 Alon Albert <aalbert@google.com> Log global autosync on dumpsys
Protect dumpsys from divide by zero

Change-Id: I3474f2f4b41643ef1e95cbcf835c96b66b13de38
/frameworks/base/core/java/android/content/SyncManager.java
33e446941722b0e31a453399e92e0e82697f05aa 06-Dec-2011 Fred Quintana <fredq@google.com> By default ICS allows two syncs to run in parallel. Make it only
do one at a time for devices that don't have much RAM as
defined by the call ActivityManager.isLargeRAM()

Bug: 5713224
Change-Id: Ic8c42103f4031e1d7b1db797edcbbd7f7bac1387
/frameworks/base/core/java/android/content/SyncManager.java
e02c88af7935c72fb90a478375e61e4a94465587 28-Oct-2011 Dianne Hackborn <hackbod@google.com> Work on process management.

Introduce a new concept of "B" services. All running services are
classified as either A or B. B services are later in the LRU list.
Their oom_adj is after the home app. This allows us to better pick
services to kill based on how long they have running, and should
reduce the amount that we end up killing the home app.

This temporarly turns on a debug log when the oom_adj of a process
is changed. Sorry, I know it is noisy. This is needed to try to
track down why some processes are being killed.

Also add a flag to the SyncManager's service binding to allow the
syncing process to be more aggressively killed if it has done UI.
This is to address cases we have seen where sync is causing an 80MB
gmail process to be kept around, preventing other process from running.
Now what will happen is that the syncing process will aggressively be
killed by the system, and can then be restarted in a much lighter-weight
state.

Do a little tweak in the power manager to allow us to still do smooth
brightness changes even when the fancy TV off animation is in use.

And get rid of a debug log in the window manager that was accidentally
left in.

Change-Id: I64a8eeaaa1f096bab29c665fbff804c7f1d029e2
/frameworks/base/core/java/android/content/SyncManager.java
c24ab866b0d46685f6ddd340b9c84375cf8d6831 19-Oct-2011 Dianne Hackborn <hackbod@google.com> Work on issue #5465917: Wakelock *overflow* held for very long times

- Fix ordering problem in sync manager that would cause its wake
locks to slightly appear in the system process when they should
be fully accounted against the app.
- Allow the system process to have more wake lock names in its
battery stats.
- In the bug report output, print totals of the wake locks for each
process, to make it easier to parse what is being printed for things
like the system process with a huge number of individual wake locks.

Change-Id: I3cf39330f22f3c51c11e65e4124150d73a7da2dd
/frameworks/base/core/java/android/content/SyncManager.java
bf976ba6576a8ebf0e25f10eca83cb8038578510 03-Oct-2011 Alon Albert <aalbert@google.com> Update dumpsys output

After using the new format for a few days, I decided it's better to ahve the auth & acct
info on every row because we will sometimes grep the data and won't see it if the auth/acct
is ommited.

Also added the "time since last sync" to every row. This is also very useful.

Detailed Statistics (Recent history): 31 (# of times) 119s (sync time)
-------------------------------------------------------------------------------------
subscribedfeeds : 8/25% 17s/14%
aagmtest2@gmail.com/com.google : 5/16% 16s/13%
aagmtest1@gmail.com/com.google : 3/9% 1s/0%
-------------------------------------------------------------------------------------
com.android.calendar : 5/16% 10s/8%
aagmtest2@gmail.com/com.google : 3/9% 0s/0%
aagmtest1@gmail.com/com.google : 2/6% 9s/8%
-------------------------------------------------------------------------------------
com.google.android.apps.books : 3/9% 26s/22%
-------------------------------------------------------------------------------------
com.android.contacts : 3/9% 14s/11%
aagmtest1@gmail.com/com.google : 2/6% 9s/7%
aagmtest2@gmail.com/com.google : 1/3% 5s/4%
-------------------------------------------------------------------------------------
com.android.browser : 3/9% 12s/10%
-------------------------------------------------------------------------------------
com.google.android.music.MusicContent : 3/9% 7s/6%
-------------------------------------------------------------------------------------
gmail-ls : 2/6% 12s/10%
-------------------------------------------------------------------------------------
com.google.android.apps.plus.content.EsGooglePhotoProvider : 2/6% 1s/0%
aagmtest2@gmail.com/com.google : 1/3% 1s/0%
aagmtest1@gmail.com/com.google : 1/3% 0s/0%
-------------------------------------------------------------------------------------
com.google.android.apps.plus.content.EsProvider : 1/3% 10s/9%
-------------------------------------------------------------------------------------
com.google.android.gallery3d.GooglePhotoProvider : 1/3% 5s/5%
-------------------------------------------------------------------------------------

Recent Sync History
#1 : 2011-10-03 13:26:41 SERVER 0.0s aagmtest2@gmail.com/com.google com.android.calendar
#2 : 2011-10-03 13:26:40 LOCAL 1.8s aagmtest2@gmail.com/com.google subscribedfeeds
#3 : 2011-10-03 13:26:40 LOCAL 0.1s aagmtest1@gmail.com/com.google subscribedfeeds
#4 : 2011-10-03 13:26:37 SERVER 0.1s 4 aagmtest2@gmail.com/com.google com.android.calendar
#5 : 2011-10-03 13:26:37 LOCAL 0.1s aagmtest2@gmail.com/com.google com.google.android.apps.books
#6 : 2011-10-03 13:26:30 SERVER 0.9s 7 aagmtest2@gmail.com/com.google com.google.android.apps.books
#7 : 2011-10-03 13:26:25 SERVER 1.1s aagmtest2@gmail.com/com.google gmail-ls
#8 : 2011-10-03 13:26:13 SERVER 11.8s 11 aagmtest2@gmail.com/com.google gmail-ls
#9 : 2011-10-03 13:26:08 SERVER 5.0s aagmtest2@gmail.com/com.google com.android.contacts
#10 : 2011-10-03 13:26:08 SERVER 0.7s 29 aagmtest2@gmail.com/com.google com.android.calendar
#11 : 2011-10-03 13:26:07 SERVER 0.7s aagmtest2@gmail.com/com.google com.android.browser
#12 : 2011-10-03 13:26:04 SERVER 3.0s 2 aagmtest2@gmail.com/com.google com.android.browser
#13 : 2011-10-03 13:26:04 SERVER 25.9s 25 aagmtest2@gmail.com/com.google com.google.android.apps.books

Change-Id: I8da004f469d136fd9a86310b262eba61197fd0e7
/frameworks/base/core/java/android/content/SyncManager.java
e0bde33e0d2b3ffb7918a5818a387773d4aa3e71 22-Sep-2011 Alon Albert <aalbert@google.com> Add Detailed Sync Stats Section
Also improve history formatting
Here's a smaple of what it looks like:

Detailed Statistics (Recent history): 20 40s
-------------------------------------------------------------------------------------
com.android.contacts : 9/45% 11/27%
aagmtest1@gmail.com/com.google : 3/15% 4/11%
aagmtest2@gmail.com/com.google : 3/15% 3/9%
aalbert@google.com/com.google : 3/15% 2/6%
-------------------------------------------------------------------------------------
gmail-ls : 6/30% 22/56%
-------------------------------------------------------------------------------------
com.android.calendar : 3/15% 5/14%
aagmtest1@gmail.com/com.google : 1/5% 4/12%
aagmtest2@gmail.com/com.google : 1/5% 0/0%
aalbert@google.com/com.google : 1/5% 0/0%
-------------------------------------------------------------------------------------
com.google.android.apps.plus.content.EsGooglePhotoProvider : 2/10% 0/1%
aagmtest1@gmail.com/com.google : 1/5% 0/1%
aagmtest2@gmail.com/com.google : 1/5% 0/0%
-------------------------------------------------------------------------------------

Recent Sync History
#1 : 2011-09-23 15:18:35 SERVER 0.8s aalbert@google.com/com.google gmail-ls
#2 : 2011-09-23 15:17:56 SERVER 1.3s 00:38
#3 : 2011-09-23 15:17:52 SERVER 4.6s 00:04
#4 : 2011-09-23 15:17:45 SERVER 1.7s 00:06
#5 : 2011-09-23 15:16:51 LOCAL 0.8s aagmtest2@gmail.com/com.google com.android.contacts
#6 : 2011-09-23 15:16:51 LOCAL 0.7s aalbert@google.com/com.google com.android.contacts
#7 : 2011-09-23 15:16:50 LOCAL 0.7s aagmtest1@gmail.com/com.google com.android.contacts
#8 : 2011-09-23 15:15:35 LOCAL 0.7s aalbert@google.com/com.google com.android.contacts
#9 : 2011-09-23 15:15:34 LOCAL 0.8s aagmtest2@gmail.com/com.google com.android.contacts
#10 : 2011-09-23 15:15:33 LOCAL 1.9s aagmtest1@gmail.com/com.google com.android.contacts
#11 : 2011-09-23 15:14:37 LOCAL 1.3s aalbert@google.com/com.google com.android.contacts
#12 : 2011-09-23 15:14:35 LOCAL 2.0s aagmtest1@gmail.com/com.google com.android.contacts
#13 : 2011-09-23 15:14:32 LOCAL 2.2s aagmtest2@gmail.com/com.google com.android.contacts
#14 : 2011-09-23 15:13:41 SERVER 1.3s aalbert@google.com/com.google gmail-ls
#15 : 2011-09-23 15:13:34 LOCAL 0.3s aalbert@google.com/com.google com.android.calendar
#16 : 2011-09-23 15:13:34 LOCAL 0.4s aagmtest2@gmail.com/com.google com.android.calendar
#17 : 2011-09-23 15:13:33 SERVER 0.1s aagmtest2@gmail.com/com.google com.google.android.apps.plus.content.EsGooglePhotoProvider
#18 : 2011-09-23 15:13:33 SERVER 0.5s aagmtest1@gmail.com/com.google com.google.android.apps.plus.content.EsGooglePhotoProvider
#19 : 2011-09-23 15:13:29 LOCAL 4.9s aagmtest1@gmail.com/com.google com.android.calendar
#20 : 2011-09-23 15:13:28 SERVER 13.1s aalbert@google.com/com.google gmail-ls

Change-Id: Idc904e2e18a373b6d2d10af65b02683c11fd8d90
/frameworks/base/core/java/android/content/SyncManager.java
87b146625a2daa7eaa606e1975e94a9a579af8b8 12-Sep-2011 Fred Quintana <fredq@google.com> Revert "Make the SyncManager timeout syncs if it takes too long to bind to them."

This reverts commit bf3c634dc5bea1d6188efaba159b1ecbc038a4f7

Bug: 5290505
Change-Id: I11a681b48360f5c200a0602c4daf30ae82b4209c
/frameworks/base/core/java/android/content/SyncManager.java
16e1678df48f6de4eb602f9cd18baa1e40b1181f 09-Sep-2011 Fred Quintana <fredq@google.com> Merge "Make the SyncManager have wakelocks per account, not per account type, otherwise the parallel sync behavior of gmail can cause the first account to finish to release the wakelock that is used for the other account, which will result in the device going to sleep before the sync is complete."
fdb2dca4546742803617c370c2fb823b0ab63a07 09-Sep-2011 Fred Quintana <fredq@google.com> Make the SyncManager have wakelocks per account, not per account type,
otherwise the parallel sync behavior of gmail can cause the first
account to finish to release the wakelock that is used for the other
account, which will result in the device going to sleep before the
sync is complete.

Change-Id: I7658465ca0956dfd9bb341de03126869e6217d31
/frameworks/base/core/java/android/content/SyncManager.java
795b6490fef91376698f01476e76af7fb00d3b2c 08-Sep-2011 Subir Jhanb <subir@google.com> Changing the timeout for detecting syncs that are taking too long to bind
BUG: 5222661

Change-Id: I9406980e26a4ee30ac6d5470bc97928e3dc74d24
/frameworks/base/core/java/android/content/SyncManager.java
bf3c634dc5bea1d6188efaba159b1ecbc038a4f7 01-Sep-2011 Fred Quintana <fredq@google.com> Make the SyncManager timeout syncs if it takes too long to bind to them.

Bug: 5222661
Change-Id: Ia6b995744860a27d13ad1ee64fa06bef137b7731
/frameworks/base/core/java/android/content/SyncManager.java
cc6edf378e32e607037cd8e69032efbe74917984 17-Aug-2011 Alon Albert <aalbert@google.com> Check for periodic sync that is in the future
Bug: 5164762
Change-Id: If578737bcfc4f83756f75c516657afdfc601caf1
/frameworks/base/core/java/android/content/SyncManager.java
34821881c159e434a1a2c8a6ba5ebfc64376791e 13-Jul-2011 Jeff Sharkey <jsharkey@android.com> Avoid sync when UID network is disconnected.

During maybeStartNextSyncLocked(), check the network connectivity for
the target UID, and skip when disconnected.

Bug: 4519115
Change-Id: I8adee8e04521cb878624b19e557d01869f984c4c
/frameworks/base/core/java/android/content/SyncManager.java
1bad83adf011ff4e6a6474c62b287d119ba43b3e 16-Feb-2011 Alon Albert <aalbert@google.com> Rename method to discourage use of this in favor of member field

Change-Id: Ie2d1e17e8879ad0f11fe815001fefccdd6603936
/frameworks/base/core/java/android/content/SyncManager.java
ed1d253573a238fd53d27def24d298314f24d425 15-Feb-2011 Alon Albert <aalbert@google.com> Bring back auto clear backoff on reconnect
Also, make sure it works this time by calling onBackoffChanged()

Bug: 3460736
Change-Id: I0470d6cb0aabd798dab4116d5d135c7a2364ed28
/frameworks/base/core/java/android/content/SyncManager.java
036dfd0653c723d4515b43639b2ab0bbf50ce718 27-Jan-2011 Fabrice Di Meglio <fdimeglio@google.com> am 3782fe2b: am f728411b: Merge "Fix bug #3395355 ("adb shell dumpsys content" should present human readable failure messages instead of error codes)" into honeycomb

* commit '3782fe2b23c4a6fa2e512f1d200ffa85c37bfb14':
Fix bug #3395355 ("adb shell dumpsys content" should present human readable failure messages instead of error codes)
dc2dd88249f5e3df672fc3c7e18f3ddfb08e02b5 26-Jan-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #3395355 ("adb shell dumpsys content" should present human readable failure messages instead of error codes)

- add human readable error messages

Change-Id: Ib6937684e61aca80b2c3bc78fd67b93c3df61d17
/frameworks/base/core/java/android/content/SyncManager.java
486bca10f5a245fa04ad7ea5ba2acba2f9c82d33 11-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> am 24bc5331: am cef29578: Merge "Change local names for greater clarity." into honeycomb

* commit '24bc5331cd302bfdf83ebee14a6acff7b6b48a34':
Change local names for greater clarity.
1b744ca49cd61482c9537e08dbd48e60037b2779 11-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> Change local names for greater clarity.

Change-Id: I806284317c0c756260080b6c006b4c338b9cbc6d
/frameworks/base/core/java/android/content/SyncManager.java
e38cabf5442745a462ad98013507cf6874221f68 11-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> am 7710465f: am 55ccb887: Merge "Don\'t check for services before boot-complete" into honeycomb

* commit '7710465f38217fd452ec6512c2c5d84c65d37729':
Don't check for services before boot-complete
03b15b976c7ba1a45e423fd3743fc7a28c28a7d9 11-Jan-2011 Robert Greenwalt <rgreenwalt@google.com> Don't check for services before boot-complete

fixes the build

Change-Id: I2ee55d9aaad53dac16fa8182df3a7b43b57eb719
/frameworks/base/core/java/android/content/SyncManager.java
e896be71c70c7aaa86886fec1044c53e93c42621 10-Jan-2011 Subir Jhanb <subir@google.com> Making the sync manager take the data connected value from ConnectivityManager and not from the intent.
BUG:3337128

Change-Id: Ife2705569fcdde1b201773d6622a8a9d0b7ccfa1
/frameworks/base/core/java/android/content/SyncManager.java
753c57bf729def69be3f3ed0bcc07b0d858b73bb 10-Jan-2011 Subir Jhanb <subir@google.com> Making the sync manager take the data connected value from ConnectivityManager and not from the intent.
BUG: 3337128
BUG: 3334394

Change-Id: I75b88c7cc0be526e8e7e441aa2668307e2452e62
/frameworks/base/core/java/android/content/SyncManager.java
b19e62add0a747127952862bb7bea0b73379edcc 16-Dec-2010 Fred Quintana <fredq@google.com> fix the TooManyDeletes to show up again

It was moved so it was no longer in the location that
SyncManager expected. I fixed it by (a) moving it to the
SyncManager directory and by (b) changing the SyncManager to
refer to it by class rather than by class name, which means
it will now check for it at compile time, not run time.
Bug: 3289922

Change-Id: I24f8bac371a16c62c2a38ed1024702c6d0913b93
/frameworks/base/core/java/android/content/SyncManager.java
744e310f6635026396e32ab0a2c009e464c2be3c 14-Dec-2010 Alon Albert <aalbert@google.com> Clear all pending backoffs on a reconnect event

Change-Id: I509e2c6c9d95922d196ac805eded523b674ad805
/frameworks/base/core/java/android/content/SyncManager.java
aeeb620906d037902d0c111a2272b6efd97f377a 10-Dec-2010 Alon Albert <aalbert@google.com> Do not increase backoff before it expires

Change-Id: Ia5f382f3cc0b0d41bf382d98665dc50512513dda
/frameworks/base/core/java/android/content/SyncManager.java
0c4d04ac2e8aa62560d8d767fa1c87e5361b0b08 04-Nov-2010 Fred Quintana <fredq@google.com> allow sync adapter authors to control more policies

- let the SyncManager know that the SyncAdapter can handle
parallel syncs even within sync adapter types
- allow indicating that the sync adapter should be auto
initialized without requiring the sync adapter to run first.
When this setting is used then setIsSyncable(1) is automatically
called for the sync adapter.

Change-Id: Ib40eba95c2556eaee4bb0fe715f379af1b72b84a
/frameworks/base/core/java/android/content/SyncManager.java
eca7511f61a6bfbb43a6646f87b5771bcc5d3fdc 09-Dec-2010 Alon Albert <aalbert@google.com> Listen for SyncAdapter death to cancel a sync

Change-Id: Icbb439c56b89fea1726723d7061c347867834dc8
/frameworks/base/core/java/android/content/SyncManager.java
6e079a32bceb85a44da3b396f8d37e718d1421d5 12-Nov-2010 Alon Albert <aalbert@google.com> Reset backoff on successful sync

Change-Id: I5661485e580dae127c756cd13e814987242e26dd
/frameworks/base/core/java/android/content/SyncManager.java
c1ac7769d884ad54a320ab3ec6d8406801cfb420 28-Oct-2010 Alon Albert <aalbert@google.com> Apply backoff to operation that caused it

Change-Id: I4f0c9598f031fc7c440071db14eca40094956afb
/frameworks/base/core/java/android/content/SyncManager.java
918339ab8255f8e1d03d8448ab1d9036c7c15173 05-Oct-2010 Fred Quintana <fredq@google.com> Make a separate active sync queue for initialization and regular syncs.

This entails allowing multiple syncs to happen in parallel, with
different limits for regular and initialization syncs.

Change-Id: I0e47c6515af5c98faf899f91855b342b0d0c708c
/frameworks/base/core/java/android/content/SyncManager.java
ade9916d5ca5795ced859a7d7405ef32140ccee8 14-Sep-2010 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 6421ae7e to master

Change-Id: Ic8c4418f13a42fc1d3a44ad68e32b4e438b07f6f
50addddba5154f6ca00d8e275d279bf4ec66921f 14-Sep-2010 Dianne Hackborn <hackbod@google.com> Fix potential crash in sync.

Change-Id: I523d8faa24b7ba57dcc09cbe91b5cb91d9f6f262
/frameworks/base/core/java/android/content/SyncManager.java
e746f03c6c8b8d0897d322ab524d545ace200fcd 14-Sep-2010 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 53686433 to master

Change-Id: I27004dc464f5771d3205ae5757c6eccc5b16854d
7e9f4eb2608148436cef36c9969bf8a599b39e72 11-Sep-2010 Dianne Hackborn <hackbod@google.com> Track client requests through location manager.

This fixes a problem where applications could ask the location
manager to do very heavy-weight things (like... say... update
location every minute), which would get accounted against the
system instead of the application because ultimately it is the
system making the heavy calls (wake locks, etc).

To solve this, we introduce a new class WorkSource representing
the source of some work. Wake locks and Wifi locks allow you
to set the source to use (but only if you are system code and thus
can get the permission to do so), which is what will be reported
to the battery stats until the actual caller.

For the initial implementation, the location manager keeps track
of all clients requesting periodic updates, and tells its providers
about them as a WorkSource param when setting their min update time.
The network location provider uses this to set the source on the
wake and wifi locks it acquires, when doing work because of the
update period.

This should also be used elsewhere, such as in the GPS provider,
but this is a good start.

Change-Id: I2b6ffafad9e90ecf15d7c502e2db675fd52ae3cf
/frameworks/base/core/java/android/content/SyncManager.java
2e192931d50ca5c5899ee12149a1edd72520c9b9 28-Apr-2010 Fred Quintana <fredq@google.com> am 2bf0f1a3: am 00b92b94: am 9aaf24f2: Merge "revert a change in the SyncManager that caused it to not cancel long running syncs if the next sync had the same account and authority." into froyo
12664a7a4d0a17c4c4db33374550f7ff19593be7 28-Apr-2010 Fred Quintana <fredq@google.com> revert a change in the SyncManager that caused it to not cancel
long running syncs if the next sync had the same account and
authority.

Change-Id: I0c18ce3b7098e79e2080e401e441ad246b1d6910
http://b/2631221
/frameworks/base/core/java/android/content/SyncManager.java
b3029c3d563cf99ea07395282b053e87d5dbbb95 06-Apr-2010 Fred Quintana <fredq@google.com> create a SyncManager WakeLock for each syncadapter
accountType/authority pair so that it will be easy to tell via
bugreport which sync adapter is holding the wake lock the most

http://b/issue?id=2571451
/frameworks/base/core/java/android/content/SyncManager.java
77c560f3d7891d9ae1ad714b5f65a22ff4f4c06b 30-Mar-2010 Fred Quintana <fredq@google.com> - changed periodic sync scheduling to just creating pending
and changed the "get next operation to sync" logic just look
at pending syncs, rather than them and periodic syncs
- made syncoperation dup-detection ignore the initialization
sync extra
- made the sync dispatcher treat initialization syncs as just
a regular sync request and also made it explicitly set or
clear the initialization extra based on whether the sync
adapter was in the syncable or unknown state
- change the getNextSync logic to prioritize syncable "unknown"
syncs above everything else (since they should be fast and
are important)
- make it reschedule completed initialization syncs if the
sync adapter is now marked syncable
- fix some logging in SyncStorageEngine
- change SyncStorageEngine to not reuse authority ids when one
is removed

http://b/issue?id=2531359
http://b/issue?id=2429638

Change-Id: I79805b582da74f4f0b6193eafaff24c2371d51e8
/frameworks/base/core/java/android/content/SyncManager.java
d5e4fdc8a4743abc0d9fe3cb952a78f9ad078c6b 31-Mar-2010 Fred Quintana <fredq@google.com> some changes due to an API review
- make EntityIterator extend Iterator and thus not throw a
RemoteException, instead converting it into a RuntimeException.
- rename ActiveSyncInfo to SyncInfo
- change getActiveSync to getCurrentSync
- remove the accessors in SyncInfo and instead make the final
fields publicly accessible
- made AbstractThreadedSyncAdapter.cancelSync not take a thread

Change-Id: I99fde5585bc5f1e95f4873ffbba189074a8d6372
http://b/issue?id=2553539
http://b/issue?id=2553541
http://b/issue?id=2553550
/frameworks/base/core/java/android/content/SyncManager.java
fb084400d6afa6443a421117fbcaee0265d38fb6 24-Mar-2010 Fred Quintana <fredq@google.com> fix bug where sync settings set lost upon upgrade from donut and eclair
to froyo

- intepret a missing syncavble attribute from donut as "unsynced"
rather than the traditional "true"
- copy the sync settings from the authorities "contacts" and "calendar"
to "com.android.contacts" and "com.android.calendar" if the latter
don't already have settings
- delay the database cleanup until after boot completed, which will give
the GoogleLoginService accounts migration code a chance to run; this
was causing all the settings to get removed upon a donut to froyo upgrade

Change-Id: I8795e97ba0c9b930d1a50784229ca9ab15dff9d2
http://b/issue?id=2531359
/frameworks/base/core/java/android/content/SyncManager.java
7620f1ae498e01bf2df58eaa1b9b20ef1eb47fa1 16-Mar-2010 Fred Quintana <fredq@google.com> Clean the settings for the account/authority when trying to sync an
adapter that is not installed.

Change-Id: Id4a804615b9546155948797f9dd9a0f03fbe4b2f
http://b/issue?id=2520175
/frameworks/base/core/java/android/content/SyncManager.java
c2e4691d788088b22eadc9b2d35e9bdf0b6a0ffc 16-Mar-2010 Fred Quintana <fredq@google.com> - make the SyncManager add periodic syncs when it upgrades from a
version of the accounts.xml file that pre-dated periodic syncs,
e.g. eclair or early froyo. http://b/2515823
- make the AccountManagerService dump() use a getAccounts call that
doesn't check the GET_ACCOUNTS permission to make it useful
in "adb bugreport"
- add some logging to SyncManager to help track down a problem

Change-Id: Icb646909074e2d327d71f6bb39cf06b6fac29e77
/frameworks/base/core/java/android/content/SyncManager.java
3ec4730e375689b8ad9a03fcf98ff7773d726dda 10-Mar-2010 Fred Quintana <fredq@google.com> make the syncmanager keep track if whether a service has been unbound
from so that it knows whether to call unbind at a later time

Change-Id: Ida0d4b06454909d84380e2336fcc238834d292bc
http://b/2492397
/frameworks/base/core/java/android/content/SyncManager.java
82c5c4248a5dcd648ecbc311e2b8cd765c388aab 01-Mar-2010 Fred Quintana <fredq@google.com> fix a bug where if a syncmanager gets back a SyncAlreadyInProgress error
it immediately reschedules another sync, thus burning up the battery if
the sync is in progress for a while.

http://b/issue?id=2477901
/frameworks/base/core/java/android/content/SyncManager.java
1b487ec44b6b5594914d52fa427bec4f29a60541 26-Feb-2010 Fred Quintana <fredq@google.com> expose some sync control methods
- ActiveSyncInfo
- ContentResolver.addStatusChangeListener
- SYNC_OBSERVER_TYPE_SETTINGS
- SYNC_OBSERVER_TYPE_PENDING
- SYNC_OBSERVER_TYPE_ACTIVE
- make the ContentService resilient to nulls passed in to the
status change listener registration and unregistration calls

bug http://b/issue?id=2337197
/frameworks/base/core/java/android/content/SyncManager.java
8570f7440780db5c9b410e033e843b0e80e2fd27 18-Feb-2010 Fred Quintana <fredq@google.com> - fix the AccountManager documentation. http://b/2401790
- only pass the authtoken through from the authenticator to the client
for getAuthToken() and strip it out from the other calls, like
addAccount(). http://b/2332762
- beef up the documentation to indicate what calls are allowed to be made
from the main thread and which are not allowed. http://b/2384961
- wait a bit before retrying syncs that failed because one was already
in progress. http://b/2414235
/frameworks/base/core/java/android/content/SyncManager.java
fb6a5359e4ae8d36bcba601aa4ce81dbeb287617 17-Feb-2010 Fred Quintana <fredq@google.com> remove check for obsolete property ro.config.sync
/frameworks/base/core/java/android/content/SyncManager.java
1bbcd105a164ebbd69ee3fd1fe8fb75cd8a8c0cb 10-Feb-2010 Fred Quintana <fredq@google.com> fix an NPE in SyncManager's dump where it can get a null AuthorityInfo; instead create one if one doesn't exist yet
/frameworks/base/core/java/android/content/SyncManager.java
53bd2522ca7767f46646606123b6e2689b811850 06-Feb-2010 Fred Quintana <fredq@google.com> - change the SyncManager to retry MANUAL syncs that encounter a soft error
- make the sync dump handle the case where there are no accounts
- fix a bug that caused the SyncManager to burn up CPU in the system process

The following was implemented:

scheduler offers:
- settings to disable sync
- retries of certain errors
- backoffs

want a way to control these when scheduling a sync
- "ignore_settings"
- "ignore initial backoff"
- "manual" : ignore settings, ignore initial backoff
- "do not retry"

- need to change the default behavior of not retrying manual syncs to retry regardless
/frameworks/base/core/java/android/content/SyncManager.java
c5d1c6db61f208b206b260f897bb5bbc64be4d97 27-Jan-2010 Fred Quintana <fredq@google.com> add sync polling

- added the ability to specify that a sync (of account/authority/extras)
should occur at a given frequency
- the existing daily poll code was replaced with seeding each
account/authority with a 24 hour periodic sync
- enhanced the "adb shell dumpsys content" output to show the
periodic syncs and when they will next run
/frameworks/base/core/java/android/content/SyncManager.java
a322dfa47eab8d49eeb71b5245de7147c0207137 28-Jan-2010 Fred Quintana <fredq@google.com> am 6f3e1e27: am 9a400fa4: Merge "initialize sync adapters that get installed while the system is running bug http://b/issue?id=2360782" into eclair

Merge commit '6f3e1e27a697d3e64bf73792c1007135319ff0d5'

* commit '6f3e1e27a697d3e64bf73792c1007135319ff0d5':
initialize sync adapters that get installed while the system is running
307da1a46b4c9b711bafe8fbaaa6b98e8868c18e 21-Jan-2010 Fred Quintana <fredq@google.com> enhance the sync manager backoff logic and add support for retry-after

moved SyncQueue and SyncOperation into their own top-level classes
to ease maintainability and testing6

removed some dead code
/frameworks/base/core/java/android/content/SyncManager.java
44037e6c41f8167bf5ac51fcb684ad28b20073ce 21-Jan-2010 Fred Quintana <fredq@google.com> initialize sync adapters that get installed while the system is running
bug http://b/issue?id=2360782
/frameworks/base/core/java/android/content/SyncManager.java
edc5189c33de03f3e2f5f73edc0e007992b933c9 07-Jan-2010 Doug Zongker <dougz@android.com> change remaining frameworks/base Gservices to Secure settings

Change-Id: I61bdb05a2526523700c2833154d5a4133881ef10
/frameworks/base/core/java/android/content/SyncManager.java
09c916bccbf236ccd0a2c80941e28cc55006e02a 08-Dec-2009 Dianne Hackborn <hackbod@google.com> Add bindService API to not bring ot foreground.

Add a new flag for bindService that tells the system to not bring the
target service's process in to the foreground scheduling class. This is
used by the sync system to not cause the current sync adapter to come to
the foreground as it is running.

Also some small improvements to the debug output of the process list
of oom adj and scheduling info.
/frameworks/base/core/java/android/content/SyncManager.java
298de218c540eab6c4e6c3415ab8a5c985c57772 04-Dec-2009 Fred Quintana <fredq@google.com> am 0ce8431c: Merge change Iaa7edda4 into eclair

Merge commit '0ce8431c15078e095a22a123dbabcd91049a9652' into eclair-mr2

* commit '0ce8431c15078e095a22a123dbabcd91049a9652':
don't reschedule syncs that failed with a tooManyRetries error
aa7edda4719dc0accbc29ff917b4280f6b600675 03-Dec-2009 Fred Quintana <fredq@google.com> don't reschedule syncs that failed with a tooManyRetries error
/frameworks/base/core/java/android/content/SyncManager.java
0fca5b45ffe86c1c69359e6eb3727a9953b971c9 29-Oct-2009 Fred Quintana <fredq@google.com> am 5e5eb393: Merge change Id572ffc7 into eclair

Merge commit '5e5eb393729630800079206498f283de8f02f3a7' into eclair-mr2

* commit '5e5eb393729630800079206498f283de8f02f3a7':
don't throw an exception when we can't find a pending sync operation in the database
cb41faa285ad0c00bcdc8815d4bf83219552007d 28-Oct-2009 Fred Quintana <fredq@google.com> don't throw an exception when we can't find a pending sync operation in the database
/frameworks/base/core/java/android/content/SyncManager.java
e7424ffdafb0c18f753f383ebfb121ea5ebf582b 15-Oct-2009 Fred Quintana <fredq@google.com> add an IPC for sync initialization
/frameworks/base/core/java/android/content/SyncManager.java
66693ea208a233993b541784d99f3a8333b7ac69 10-Oct-2009 Fred Quintana <fredq@google.com> fix sync exponential backoff for expedited syncs
/frameworks/base/core/java/android/content/SyncManager.java
f7ae77cd67f1a3993b8e56c1af4720a7adf4e69d 03-Oct-2009 Fred Quintana <fredq@google.com> account manager api review changes
/frameworks/base/core/java/android/content/SyncManager.java
e91ebe2be9580625ff31af8583e55aaefc50474f 30-Sep-2009 Fred Quintana <fredq@google.com> - make SyncManager get the accounts list during the constructor,
which will allow syncs to be scheduled during bootup. The
providers need this so that they can potentially schedule
syncs while they are starting up.
- make the SyncManager message handler wait until boot
has completed to start dispatching messages
/frameworks/base/core/java/android/content/SyncManager.java
86135d3240a50f9224b49fb8407a1c86cae0e1b9 25-Sep-2009 Tadashi G. Takaoka <takaoka@google.com> Pass provider authority to SyncActivityTooManyDeletes

Internal Bug: 2138733
/frameworks/base/core/java/android/content/SyncManager.java
600dde04ee07b740dc119c879cf096b5d697ec32 23-Sep-2009 Fred Quintana <fredq@google.com> make the SyncManager listen for backgroun data setting changes and do a sync when the setting is enabled
/frameworks/base/core/java/android/content/SyncManager.java
be3bceb5b908c23eeda5a8d04d2ea3d43cc7ed10 23-Sep-2009 Fred Quintana <fredq@google.com> fix the logic for starting a sync after the accounts changed
/frameworks/base/core/java/android/content/SyncManager.java
44f574781545781c31db3dcf495ed08763073f75 21-Sep-2009 Doug Zongker <dougz@android.com> log hash of account name in sync event log

Add an account field to the sync event, which is the java hash of the
account name. (A hash is used for privacy reasons.)
/frameworks/base/core/java/android/content/SyncManager.java
d2a3a8a7ba869247e6d1a8e3f72780e4841b39d6 16-Sep-2009 Jim Miller <jaggies@google.com> Fix for #2092883: Allow manual sync even when background data is disabled
/frameworks/base/core/java/android/content/SyncManager.java
44ee0f03f99b3eea8bf3d3e7f63ad0553623f426 14-Sep-2009 Debajit Ghosh <debajit@google.com> add system properties for experimenting with sync timeouts.
/frameworks/base/core/java/android/content/SyncManager.java
dd9b82c283815747b75fe4434c65e4b6c9c9b54f 03-Sep-2009 Dianne Hackborn <hackbod@google.com> Add better service reporting.

This will be used elsewhere.

Change-Id: Id561fa7fed5eb65446312cb697813483903d33a6
/frameworks/base/core/java/android/content/SyncManager.java
a34f1ad7c3a68d971e6332aa2fb1c16d083920b3 02-Sep-2009 Dianne Hackborn <hackbod@google.com> Fiddle system boot ordering.

This makes the system a little more careful to not start third party
code until it is ready to.

Also fix a little bug in SyncManager that would cause it to crash
during boot if sync was in a failure state.

Change-Id: Ib2d287d8441d155d393fe740a5f98690895fd358
/frameworks/base/core/java/android/content/SyncManager.java
4f9cfc5c52c8b40975c1bc2829efa46b4bddb03f 03-Sep-2009 Fred Quintana <fredq@google.com> suppress syncs until boot is complete
/frameworks/base/core/java/android/content/SyncManager.java
f892fb3a431e04151382d1bddc4438fd04487a6a 28-Aug-2009 Fred Quintana <fredq@google.com> - don't schedule syncs that we will never dispatch
- expedite the INITIALIZATION sync
/frameworks/base/core/java/android/content/SyncManager.java
c58b611652c62b269cdc323ff8285ef789b1853d 01-Sep-2009 Fred Quintana <fredq@google.com> Revert "- don't schedule syncs that we will never dispatch"

This reverts commit fae7ff106b3ed791e324ddcec17226c3fe1cd809.
/frameworks/base/core/java/android/content/SyncManager.java
fae7ff106b3ed791e324ddcec17226c3fe1cd809 28-Aug-2009 Fred Quintana <fredq@google.com> - don't schedule syncs that we will never dispatch
- expedite the INITIALIZATION sync
/frameworks/base/core/java/android/content/SyncManager.java
c848b7023bcb19d7a392eb9f4669e56906e5382c 26-Aug-2009 Fred Quintana <fredq@google.com> clean up the too many deletes dialog
/frameworks/base/core/java/android/content/SyncManager.java
e0616ffb741b64e3bc7a1e3ad9def3d50eee53fd 19-Aug-2009 Fred Quintana <fredq@google.com> add a supportsUploading flag in the SyncAdapter description and honor it in the SyncManager
/frameworks/base/core/java/android/content/SyncManager.java
4a6679b97e0285c5b65ec5c0d9080ff90d3e9e81 17-Aug-2009 Fred Quintana <fredq@google.com> make syncadapter set whether the account is syncable
/frameworks/base/core/java/android/content/SyncManager.java
5e787c42f2a6b3afc8ec8320a08d51b2d44b8614 17-Aug-2009 Fred Quintana <fredq@google.com> - add a "isSyncable" flag to a given account/authority pair that
indicates whether or not syncs should be attempted for it.
- add public methods to get and set this parameter
/frameworks/base/core/java/android/content/SyncManager.java
ffd0cb04f97e62d286d185c520580d81a9c328b1 16-Aug-2009 Fred Quintana <fredq@google.com> do not merge: cherrypicked 3710f390968e683a0ad3adf0b517dfcade3564ce from master branch
/frameworks/base/core/java/android/content/SyncManager.java
8294fadb155a33da8a40d8412afb35e6b424afcb 16-Jul-2009 Joe Onorato <joeo@android.com> Make sync not start until setup wizard is done.
/frameworks/base/core/java/android/content/SyncManager.java
ac9385ef3105fb7464e1f46049c62755a8b7f0e9 23-Jun-2009 Fred Quintana <fredq@google.com> - clean up the sync settings names to:
(get|set)SyncAutomatically
(get|set)MasterSyncAutomatically
- change SYNC_EXTRAS_FORCE to SYNC_EXTRAS_MANUAL to mace clear that
this overrides the .*SyncAutomatically settings
- make ContentResolver methods that call the sync controls methods
in IContentService so that SDK users can use them
- rename startSync to requestSync to reinforce the fact that a sync
is not immediately or always started when this method is called
- add an Account parameter to all the sync settings and control methods
- change the sync control methods to take a String authority rather than a Uri uri
/frameworks/base/core/java/android/content/SyncManager.java
21bb0deb36af32339521038cdbd827f74468df4a 16-Jun-2009 Fred Quintana <fredq@google.com> beef up the syncadapter API
/frameworks/base/core/java/android/content/SyncManager.java
9788976b1465ce982b5ae7c741345edd0ecd9322 15-Jun-2009 Fred Quintana <fredq@google.com> add icon and label to the authenticator description
/frameworks/base/core/java/android/content/SyncManager.java
3531fdb1d9a0ca536bd7a7a27d35b3e62c318ad9 08-May-2009 The Android Open Source Project <initial-contribution@android.com> merge 55280a9

Merge commit '55280a9'
55280a91884b9256e8db6af6a09f28b3feeaa9d8 08-May-2009 Dianne Hackborn <hackbod@google.com> Improve shutdown process to send broadcast for applications.

This introduces a new class in the base platform for performing a clean
shutdown (which was copied from the classes in the policies). It
includes new features to send a shutdown broadcast for applications
to do cleanup, and ot have the activity manager pause the current
activity before proceeding with the shutdown. These facilities are
also use to write at the most recent stat files for sync, battery
and user activity.
/frameworks/base/core/java/android/content/SyncManager.java
7a1355950172b7a549820e9a2cd4a9b2099ec32f 06-May-2009 Dianne Hackborn <hackbod@google.com> merged 231cc608d06ffc31c24bf8aa8c8275bdd2636581
231cc608d06ffc31c24bf8aa8c8275bdd2636581 28-Apr-2009 Dianne Hackborn <hackbod@google.com> Rewrite SyncStorageEngine to use flat files and in-memory data structures.

The previous implementation used a database for storing all of its state, which could cause
a significant amount of IO activity as its tables were updated through the stages of a sync.
This new implementation replaces that in-memory data structures, with hand-written code
for writing them to persistent storage.

There are now 4 files associated with this class, holding various pieces of its state that
should be consistent. These are everything from a main XML file of account information that
must always be retained, to a binary file of per-day statistics that can be thrown away at
any time. Writes of these files as scheduled at various times based on their importance of
the frequency at which they change.

Because the database no longer exists, there needs to be a new explicit interface for
interacting with the sync manager database. This is provided by new APIs on IContentService,
with a hidden method on ContentResolver to retrieve the IContentService so that various
system entities can use it. Other changes in other projects are required to update to the
new API.

The goal here is to have as little an impact on the code and functionality outside of
SyncStorageEngine, though due to the necessary change in API it is still somewhat extensive.
/frameworks/base/core/java/android/content/SyncManager.java
718d8a2d7ff3e864a73879eb646f46c14ab74d07 30-Apr-2009 Fred Quintana <fredq@google.com> decouple SyncAdapter from ContentProvider
/frameworks/base/core/java/android/content/SyncManager.java
d9d2f1140b52fd0c014e9deac59f6000564b7e84 23-Apr-2009 Fred Quintana <fredq@google.com> change the sync framework and users to understand Account
/frameworks/base/core/java/android/content/SyncManager.java
603073430bbcb1bd29db7afb9b14e2732ad589fb 25-Mar-2009 Fred Quintana <> Automated import from //branches/master/...@142414,142414
/frameworks/base/core/java/android/content/SyncManager.java
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/core/java/android/content/SyncManager.java
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/core/java/android/content/SyncManager.java
d24b8183b93e781080b2c16c487e60d51c12da31 11-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@130745
/frameworks/base/core/java/android/content/SyncManager.java
f013e1afd1e68af5e3b868c26a653bbfb39538f8 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
/frameworks/base/core/java/android/content/SyncManager.java
54b6cfa9a9e5b861a9930af873580d6dc20f773c 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
/frameworks/base/core/java/android/content/SyncManager.java