Commit Graph

1029 Commits

Author SHA1 Message Date
Brad Fitzpatrick
8fecde9905 am 43194ce0: am 52d70722: am cb842753: Merge "Closing cursor in finalizer to avoid GREF and fd leak in acore"
* commit '43194ce05eef26665572fb248a108fd24d247a8f':
  Closing cursor in finalizer to avoid GREF and fd leak in acore
2011-01-12 00:07:38 -08:00
Brad Fitzpatrick
43194ce05e am 52d70722: am cb842753: Merge "Closing cursor in finalizer to avoid GREF and fd leak in acore"
* commit '52d70722654548d156bd7a1cb8c1f05b94b09f06':
  Closing cursor in finalizer to avoid GREF and fd leak in acore
2011-01-12 00:04:27 -08:00
Dianne Hackborn
b540514cb2 am b5637c46: am 45a8f53b: Merge "Get rid of old ParcelFileDescriptor API." into honeycomb
* commit 'b5637c467d7ea859f589d2006f3806c5a2c4a27f':
  Get rid of old ParcelFileDescriptor API.
2011-01-11 18:02:58 -08:00
Dianne Hackborn
540f86aa42 Get rid of old ParcelFileDescriptor API.
Also some new debugging code in AsyncTaskLoader.

Change-Id: Ib13386b7862821cf0ee31b003bedef78f46240f1
2011-01-11 17:56:12 -08:00
Robert Greenwalt
486bca10f5 am 24bc5331: am cef29578: Merge "Change local names for greater clarity." into honeycomb
* commit '24bc5331cd302bfdf83ebee14a6acff7b6b48a34':
  Change local names for greater clarity.
2011-01-11 10:19:40 -08:00
Robert Greenwalt
cef295780a Merge "Change local names for greater clarity." into honeycomb 2011-01-11 10:15:21 -08:00
Robert Greenwalt
1b744ca49c Change local names for greater clarity.
Change-Id: I806284317c0c756260080b6c006b4c338b9cbc6d
2011-01-11 10:08:31 -08:00
Joe Onorato
fab3f2fef8 am cb649050: am e5e95588: Merge "add ComponentInfo.isEnabled()" into honeycomb
* commit 'cb649050a9af1df45df5e99f965307e6684ac56d':
  add ComponentInfo.isEnabled()
2011-01-10 18:06:22 -08:00
Robert Greenwalt
e38cabf544 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
2011-01-10 18:05:34 -08:00
Joe Onorato
a85a91573a add ComponentInfo.isEnabled()
Change-Id: I5ce59f62dc0ce3ce446bdbe397d1515e43031d76
2011-01-10 17:26:39 -08:00
Robert Greenwalt
03b15b976c Don't check for services before boot-complete
fixes the build

Change-Id: I2ee55d9aaad53dac16fa8182df3a7b43b57eb719
2011-01-10 17:09:25 -08:00
Subir Jhanb
e896be71c7 Making the sync manager take the data connected value from ConnectivityManager and not from the intent.
BUG:3337128

Change-Id: Ife2705569fcdde1b201773d6622a8a9d0b7ccfa1
2011-01-10 14:18:09 -08:00
Subir Jhanb
753c57bf72 Making the sync manager take the data connected value from ConnectivityManager and not from the intent.
BUG: 3337128
BUG: 3334394

Change-Id: I75b88c7cc0be526e8e7e441aa2668307e2452e62
2011-01-10 12:18:11 -08:00
Brad Fitzpatrick
52d7072265 am cb842753: Merge "Closing cursor in finalizer to avoid GREF and fd leak in acore"
* commit 'cb8427538dfdc5eae941e377b11bfd11a95fc5a5':
  Closing cursor in finalizer to avoid GREF and fd leak in acore
2011-01-10 08:32:35 -08:00
Johannes Carlsson
872a52c6b6 Closing cursor in finalizer to avoid GREF and fd leak in acore
The finalize() call did not clean up completely, this eventually
caused the android.process.acore to crash since it ran out of fds
and GREF to increased above 2000 if an application forgot to close
its cursor objects. A warning was also added when this happens so
that application developers can correct their mistake. The
included test case tries to verify that the finalizer works as
expected by creating a bunch of Cursor objects without closing
them (without this fix the acore process crashes after about 400
iterations and the test case ends with "Process crashed").

Change-Id: I11e485cef1ac02e718b2742108aa88793666c31d
2011-01-10 12:46:21 +01:00
Dianne Hackborn
1f22d2a31a DO NOT MERGE Fix issue #3333958: Package Manager can sometimes mistakenly think...
...an app is disabled!

Ouch.

Change-Id: I45dc2beef4e413fd447d905632901fadd924cb6e
2011-01-09 13:15:30 -08:00
Dianne Hackborn
412ebd6f9d am 433863b1: Fix issue #3333958: Package Manager can sometimes mistakenly think...
* commit '433863b1085248a8fdc9bcd0ac8501cc6a7b8ace':
  Fix issue #3333958: Package Manager can sometimes mistakenly think...
2011-01-09 11:49:59 -08:00
Dianne Hackborn
433863b108 Fix issue #3333958: Package Manager can sometimes mistakenly think...
...an app is disabled!

Ouch.

Change-Id: I5788c5f8edfe2a0d6f4f0f3359e1742f8ed8d98e
2011-01-09 11:46:27 -08:00
Dmitri Plotnikov
59d8edd09d Fixed the waitForLoader method.
The reason we need a separate latch is that
AsyncTask will post onPostExecute/onCancelled
_after_ executing mFuture.get().  The previous
implementation would only wait for mFuture.get()
to complete and not the entire task.

Change-Id: I96964591980965148eb09af38b5838bfa5d28277
2011-01-09 11:05:50 -08:00
Dianne Hackborn
247fe74c93 Implement issue # 3255887 could CursorLoader offer...
...to throttle contentobserver-based requeries

Why yes, I guess it could.

This also reworks AsyncTaskLoader to not generate multiple
concurrent tasks if it is getting change notifications before
the last background task is complete.

And removes some of the old APIs that had been deprecated but
need to be gone for final release.

And fixes a few little problems with applying the wrong theme
in system code.

Change-Id: Ic7a665b666d0fb9d348e5f23595532191065884f
2011-01-08 18:25:30 -08:00
Dmitri Plotnikov
cd3676e7b8 Adding AsyncTaskLoader.waitForLoader() for testing
Change-Id: I8a4c13d48c9deca70594be58beafb68f08da65ea
2011-01-07 09:23:10 -08:00
Dianne Hackborn
b35cd54b88 No longer needed.
Change-Id: Ia2e8264147bb02e29599227d0588e40b1e626358
2011-01-04 22:41:20 -08:00
Alon Albert
2967aa3e60 am 672ebb61: Merge "Improved ignore-backoff handling Allow a non-epidited ignore-backoff op to pass through an expidited backed off op." into gingerbread
* commit '672ebb61a755e4bbe60e4e884b1adadf186733b6':
  Improved ignore-backoff handling Allow a non-epidited ignore-backoff op to pass through an expidited backed off op.
2010-12-28 14:57:09 -08:00
Jean-Baptiste Queru
03ee779b28 am e90a1b16: am 752942ec: Merge "The phone is crashing when unknown mime content is transferred."
* commit 'e90a1b16a3d6c559cb7fc47ad967a1810d88e923':
  The phone is crashing when unknown mime content is transferred.
2010-12-28 11:00:39 -08:00
Jean-Baptiste Queru
e90a1b16a3 am 752942ec: Merge "The phone is crashing when unknown mime content is transferred."
* commit '752942ec4719e6a274d6ab11103ac28459cb0f0c':
  The phone is crashing when unknown mime content is transferred.
2010-12-28 10:55:04 -08:00
Alon Albert
d41fe75f09 Improved ignore-backoff handling
Allow a non-epidited ignore-backoff op to pass through
an expidited backed off op.

To do this, I first refactored the complicated if statement:

            if (best == null
                    || ((bestSyncableIsUnknownAndNotARetry == syncableIsUnknownAndNotARetry)
                        ? (best.expedited == op.expedited
                           ? opRunTime < bestRunTime
                           : op.expedited)
                        : syncableIsUnknownAndNotARetry)) {
                best = op;
                bestSyncableIsUnknownAndNotARetry = syncableIsUnknownAndNotARetry;
                bestRunTime = opRunTime;
            }

Into a more readable:
            boolean setBest = false;
            if (best == null) {
                setBest = true;
            } else if (bestSyncableIsUnknownAndNotARetry == syncableIsUnknownAndNotARetry) {
                if (best.expedited == op.expedited) {
                    if (opRunTime < bestRunTime) {
                        //  if both have same level, earlier time wins
                        setBest = true;
                    }
                } else {
                    if (op.expedited) {
                        setBest = true;
                    }
                }
            } else {
                if (syncableIsUnknownAndNotARetry) {
                    setBest = true;
                }
            }
            if (setBest) {
                best = op;
                bestSyncableIsUnknownAndNotARetry = syncableIsUnknownAndNotARetry;
                bestRunTime = opRunTime;
            }

The refactoring was all done automatically with IntelliJ to avoid human error
in the conversion.

After verifying this code still behaved as expected including the error
condition in the bug, I added handling for the cases when a non-expidited op
may override an expedited op if certain conditions occur, specificaly, if the
expidited op is backed off and the non-expidited op is not.

Finally, refactored to make it testable and added tests and logging.

Bug: 3128963

Change-Id: I131cbcec6073ea5fe425f6b5aa88ca56c02b6598
2010-12-22 14:40:43 -08:00
Dianne Hackborn
0e3b8f421d Fix issue #3301572: onCreateLoader must not be a member class: VolumeMetadataLoader
Also some various cleanup.

Change-Id: I8e8616a86c50c86817f7ec9bb02a5954c1ccd84f
2010-12-21 11:12:09 -08:00
Ola Olsson
145e6c4975 The phone is crashing when unknown mime content is transferred.
The content resolver does not take care of the IllegalStateException
that is thrown in getType and that needs to be fixed.

Change-Id: I3e66f1aa259ab91fb9233e1ba07faa1ab6c3f2dd
2010-12-21 08:52:22 +01:00
Dianne Hackborn
a2ea747faa More cleanup of Loader APIs.
- Remove old method names.
- Introduce onXxx() hooks to Loader.
- Improve debugging.

Change-Id: I3fba072a05c7023aa7d2c3eb4e126feb514ab6d8
2010-12-20 14:10:31 -08:00
Dianne Hackborn
8c972f2ce2 Merge "Some fixes to the new loader management." 2010-12-17 17:11:54 -08:00
Dianne Hackborn
f73c75ca20 Some fixes to the new loader management.
Change-Id: Ib882be5762b0ebeed9b027754159f401232718e9
2010-12-17 16:54:05 -08:00
Fred Quintana
b23a82cc03 Merge "fix the TooManyDeletes to show up again" 2010-12-17 11:27:03 -08:00
Dianne Hackborn
c91893511d Fix issue #3272082: Contacts: when going back from edit view,
list UI is not ready yet

This involves some reworking of Loaders.

Loaders, in particular CursorLoader, are now expected to retain
their current data after being stopped.  This allows applications
to keep that data across onStop() -> onStart(), so when the user
returns to the app it doesn't have to wait for the data to reload
and thus cause flicker.

This includes various API changes to better reflect the new
semantics, plus a new LoaderCallbacks method to tell the application
when it is actually time to stop their use of a loader's data.

Note this is somewhat half-done, to help checking in the extensive
application changes that are required without causing build breakage.

Change-Id: Ib4b3bf8185a6da46e7f06ca125521d65e2e380a1
2010-12-16 20:09:13 -08:00
Fred Quintana
b19e62add0 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
2010-12-16 15:19:37 -08:00
Eric Laurent
051c751569 Merge "Fix error in HDMI and digital dock intent strings" 2010-12-16 10:28:05 -08:00
Eric Laurent
4d29b2f11d Fix error in HDMI and digital dock intent strings
Intent.ACTION_USB_DGTL_HEADSET_PLUG and Intent.ACTION_HDMI_AUDIO_PLUG
where mistakenly using the same string.

Change-Id: Iede1896196585396dcc7e00aad06ad60e9a87875
2010-12-16 09:25:53 -08:00
Alon Albert
744e310f66 Clear all pending backoffs on a reconnect event
Change-Id: I509e2c6c9d95922d196ac805eded523b674ad805
2010-12-15 14:28:52 -08:00
Dianne Hackborn
194157638a Fix launching of activities that I broke.
Change-Id: I39f4189bad6bdecdc7f9362410f36453fd816121
2010-12-15 00:20:27 -08:00
Brad Fitzpatrick
4e920f70f3 Add MODE_MULTI_PROCESS flag to Context.getSharedPreferences()
Also, changes to make this testable with CTS:

-- special PENALTY_DEATH StrictMode fast path that doesn't use
   the Looper idling to "time" the violation.  Only used when
   death is the only violation,

-- make PENALTY_DEATH throw a RuntimeException instead of
   killing its process with a signal.  this means we can catch
   it in CTS tests, but it's also more consistent with
   PENALTY_NETWORK_DEATH in Honeycomb.

-- make FileUtils.getFileStatus() invoke StrictMode, which isn't
   (yet?) aware of I/O in native code.  so help it out.

CTS test for MODE_MULTI_PROCESS is in I6154edab

Change-Id: Icf93f9dfb0ece06b16781e4803dd2c17df3cf1b3
2010-12-14 16:27:21 -08:00
Alon Albert
aeeb620906 Do not increase backoff before it expires
Change-Id: Ia5f382f3cc0b0d41bf382d98665dc50512513dda
2010-12-14 10:09:54 -08:00
Dianne Hackborn
ccc7141313 resolved conflicts for merge of 78e9f4cb to master
Change-Id: I1135361e6d66f524c3f349e2bf1f31bd4191c634
2010-12-13 14:55:25 -08:00
Dianne Hackborn
78e9f4cbae am e4a59519: Fix issue #3154576: battery stats checkin should include UID -> packages+ map
* commit 'e4a5951925f16f18dae91ed65567e96528f17fee':
  Fix issue #3154576: battery stats checkin should include UID -> packages+ map
2010-12-13 14:37:09 -08:00
Dianne Hackborn
e4a5951925 Fix issue #3154576: battery stats checkin should include UID -> packages+ map
Includes some other small fixes to battery collection and a few
other things.

Output of package info looks like this:

5,0,i,uid,1000,com.android.settings
5,0,i,uid,1000,com.android.providers.subscribedfeeds
5,0,i,uid,1000,com.android.providers.settings
5,0,i,uid,1000,com.android.server.vpn
5,0,i,uid,1000,android
5,0,i,uid,1000,com.android.systemui
5,0,i,uid,1000,com.google.android.backup
5,0,i,uid,1001,com.android.phone
5,0,i,uid,1001,com.android.providers.telephony
5,0,i,uid,1022,com.android.nfc
5,0,i,uid,10021,com.google.android.location
5,0,i,uid,10021,com.google.android.syncadapters.calendar
5,0,i,uid,10021,com.google.android.gsf
5,0,i,uid,10021,com.google.android.syncadapters.contacts
5,0,i,uid,10026,com.android.providers.downloads.ui
5,0,i,uid,10026,com.android.providers.media
5,0,i,uid,10026,com.android.providers.drm
5,0,i,uid,10026,com.android.providers.downloads
5,0,i,uid,10032,com.android.launcher
5,0,i,uid,10039,com.google.android.gm
5,0,i,uid,10041,com.google.android.gallery3d
5,0,i,uid,10049,com.android.providers.calendar

Change-Id: I9e38f254eef146339113ad270f5c6e8b60fb7a1d
2010-12-13 14:31:40 -08:00
Dianne Hackborn
30d7189067 Fix issue #3274841: Orientation change problem with a paused activity
Plus a bunch of debug output improvements.

And some new Intent helpers for dealing with restarting an app.

Change-Id: I50ec56bca6a86c562156b13fe8a6fdf68038a12e
2010-12-13 12:57:02 -08:00
Nick Pelly
d250746716 resolved conflicts for merge of 1d0d1188 to master
Change-Id: I80413d5a54a0284ab6f685c4c6197a2c009ea717
2010-12-13 12:22:34 -08:00
Nick Pelly
1d0d1188d7 am ae56a851: Merge "Make getSystemService(NFC_SERVICE) the NFC entry point." into gingerbread
* commit 'ae56a851624c2b2e78da8a2c339d2caa64c4f981':
  Make getSystemService(NFC_SERVICE) the NFC entry point.
2010-12-10 17:19:45 -08:00
Nick Pelly
50b4d8f643 Make getSystemService(NFC_SERVICE) the NFC entry point.
This gives NFC service a handle to the application context.

Deprecate NfcAdapter.getDefaultAdapter(), it does not provide a context.
Using this method will print a warning, and will later throw an exception
if a method that requires a context is called. No 2.3 API's will fail, but
new API's that do require a context might fail.

Also add helper NfcAdapter.getDefaultAdapter(Context).

Change-Id: I9a6378de4ef4b61ad922f8d53e64e2a1a1d5d60c
2010-12-10 17:12:33 -08:00
Fred Quintana
957d85ec04 revert an API change that conflicted witha previous SDK version
Change-Id: I71ef6bd135296846021c0e7ee465cac9181b5473
2010-12-09 16:26:18 -08:00
Fred Quintana
0c4d04ac2e 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
2010-12-09 14:24:34 -08:00
Alon Albert
eca7511f61 Listen for SyncAdapter death to cancel a sync
Change-Id: Icbb439c56b89fea1726723d7061c347867834dc8
2010-12-09 14:06:04 -08:00