Commit Graph

1563 Commits

Author SHA1 Message Date
Dianne Hackborn
cbc5e0aae4 am 3522225d: am ea01e4a2: Merge "Survey says: NIET!" into jb-dev
* commit '3522225dba19e77defaf56f0e70c0382c2cbb0a2':
  Survey says: NIET!
2012-06-02 08:20:36 -07:00
Dianne Hackborn
4034bc431d Survey says: NIET!
Bug: 6593206
Change-Id: I5390609a5615d6aff1793a9bc361012a0cea330b
2012-06-01 13:38:48 -07:00
Philip Milne
0597161ee4 Merge "Fix for bug 6050753." 2012-05-31 10:30:09 -07:00
Kenny Root
327bc6bb50 am 65519b8b: am 03e93e51: Merge "Move package-wide flags out of parseApplication" into jb-dev
* commit '65519b8bb94321889eb3e34c76428f6dd9e0bd84':
  Move package-wide flags out of parseApplication
2012-05-30 15:50:45 -07:00
Kenny Root
7cb9be26c1 Move package-wide flags out of parseApplication
Being on SD card and being forward-locked are package-wide flags that
shouldn't depend on an APK having an <application> stanza.

Bug: 6563724
Change-Id: If5f2159cd8e3fa136f959b656d82b05ea6bdfae5
2012-05-30 15:30:37 -07:00
Dianne Hackborn
ce783749b1 am f3b4c93e: am ae5811c7: Merge "Fix (mostly) issue #5109947: Race condition between retrieving a..." into jb-dev
* commit 'f3b4c93e0da9af2db9e16864faa734cf70fecfe3':
  Fix (mostly) issue #5109947: Race condition between retrieving a...
2012-05-29 15:57:52 -07:00
Dianne Hackborn
6ae8d18218 Fix (mostly) issue #5109947: Race condition between retrieving a...
...content provider and updating its oom adj

This introduces the concept of an "unstable" reference on a content
provider.  When holding such a reference (and no normal stable ref),
the content provider dying will not cause the client process to be
killed.

This is used in ContentResolver.query(), .openAssetFileDescriptor(),
and .openTypedAssetFileDescriptor() to first access the provider
with an unstable reference, and if at the point of calling into the
provider we find it is dead then acquiring a new stable reference
and doing the operation again.  Thus if the provider process dies
at any point until we get the result back, our own process will not
be killed and we can safely retry the operation.

Arguably there is still the potential for a race -- if somehow the
provider is killed way late by the OOM killer after the query or
open has returned -- but this should now be *extremely* unlikely.
We also continue to have the issue with the other calls, but these
are much less critical, and the same model can't be used there (we
wouldn't want to execute two insert operations for example).

The implementation of this required some significant changes to the
underlying plumbing of content providers, now keeping track of the
two different reference counts, and managing them appropriately.  To
facilitate this, the activity manager now has a formal connection
object for a client reference on a content provider, which hands to
the application when opening the provider.

These changes have allowed a lot of the code to be cleaned up and
subtle issues closed.  For example, when a process is crashing, we
now have a much better idea of the state of content provider clients
(olding a stable ref, unstable ref, or waiting for it to launch), so
that we can correctly handle each of these.

The client side code is also a fair amount cleaner, though in the
future there is more than should be done.  In particular, the two
ProviderClientRecord and ProviderRefCount classes should be combined
into one, part of which is exposed to the ContentResolver internal
API as a reference on a content provider with methods for updating
reference counts and such.  Some day we'll do that.

Change-Id: I87b10d1b67573ab899e09ca428f1b556fd669c8c
2012-05-29 13:33:09 -07:00
Dianne Hackborn
bd8e6f9d1c am c5fe4737: am fb5c3dba: Fix issue #6440173: MenuItem.setIcon(Drawable) scaling incorrectly...
* commit 'c5fe47376c905e946eafbabdb78db4c128d3d71b':
  Fix issue #6440173: MenuItem.setIcon(Drawable) scaling incorrectly...
2012-05-21 14:12:48 -07:00
Jeff Sharkey
dc7643d84c am 40bd46ae: am 9cb660fa: Merge "Guard against apps breaking CHOOSER contract." into jb-dev
* commit '40bd46aefde45a216ff73f8c40497a50eccdb1e0':
  Guard against apps breaking CHOOSER contract.
2012-05-21 14:12:33 -07:00
Dianne Hackborn
bad4c4bf71 am ccf4e2f7: am abe39277: Merge "Fix issue #6515427: Add android.hardware.television and fix..." into jb-dev
* commit 'ccf4e2f71b65ace6d55c1e8513dd60b1123805da':
  Fix issue #6515427: Add android.hardware.television and fix...
2012-05-21 12:43:35 -07:00
Dianne Hackborn
fb5c3dba4d Fix issue #6440173: MenuItem.setIcon(Drawable) scaling incorrectly...
...when resource is aliased

We were not correctly using the final resolved configuration when
retrieving a drawable through Resources.getDrawable().  (It already
does the correct behavior when going through TypedArray.getDrawable()).

Change-Id: I9032b788b592412178e31e2e6b0181b92c20fe45
2012-05-18 15:51:27 -07:00
Jeff Sharkey
9cb660fa34 Merge "Guard against apps breaking CHOOSER contract." into jb-dev 2012-05-18 14:20:02 -07:00
Jeff Sharkey
1c29700c5f Guard against apps breaking CHOOSER contract.
Bug: 6520937
Change-Id: I677a644cf7765bbb046f9c82e1ebd8a40968cee6
2012-05-18 13:55:47 -07:00
Dianne Hackborn
0cf2c8a533 Fix issue #6515427: Add android.hardware.television and fix...
...logic for notouch in Configuration

Added new TELEVISION feature.

We now force the configuration to "television" if the TELEVISION
feature is set, and "notouch" if the TOUCHSCREEN feature is not set.

Also cleaned up documentation, deprecated some configurations that
are not used.

Change-Id: If1c7a284b580a8a66bda2a75f0c7fa841b3dc9b7
2012-05-17 18:11:14 -07:00
Dianne Hackborn
7ba90544d9 am a15ebaa2: am 79f5777d: Merge "A few odds and ends." into jb-dev
* commit 'a15ebaa25c93c750c22e80498c2415b2af0f2f3e':
  A few odds and ends.
2012-05-15 18:20:45 -07:00
Dianne Hackborn
e302a16235 A few odds and ends.
- Add documentation on "television" UI mode.
- Tweak new documentation and implementation around propagating
  URI grants through choosers.
- Add new activity launch flag for closing system dialogs.

Change-Id: I978c05f0dc3d16e1c55d43631828b9efa6335b19
2012-05-15 14:58:32 -07:00
Jeff Sharkey
6b10c61ef9 am 68ba1c86: am d6c1e498: Merge "Migrate stream extras in CHOOSER intents." into jb-dev
* commit '68ba1c8604448049ded03a5d95d6b34241d0267d':
  Migrate stream extras in CHOOSER intents.
2012-05-15 11:44:06 -07:00
Jeff Sharkey
3b7d1ef4be Migrate stream extras in CHOOSER intents.
When sending CHOOSER intent, inspect its target for any EXTRA_STREAM
needing migration. If any migration happens, copy the ClipData to
the CHOOSER intent and set GRANT_READ flag. Also update CHOOSER docs.

Bug: 6463773
Change-Id: I66a7adf7bf6f2f173866925cb7e048f4c7a63222
2012-05-14 17:37:11 -07:00
Jeff Sharkey
d640d0641a am f2fe4cb1: am cd586258: Merge "Enforce READ_EXTERNAL through Settings.Secure." into jb-dev
* commit 'f2fe4cb11b2b93acf1a983e856efe26b6bb79683':
  Enforce READ_EXTERNAL through Settings.Secure.
2012-05-14 08:35:42 -07:00
Jeff Sharkey
cd5862586a Merge "Enforce READ_EXTERNAL through Settings.Secure." into jb-dev 2012-05-11 15:47:01 -07:00
Jeff Sharkey
f53857716a Enforce READ_EXTERNAL through Settings.Secure.
Always defers to user-defined setting, when present.

Bug: 6389556
Change-Id: I079d2a41b772facfdac74eefc4c8072fc9284f97
2012-05-11 15:31:39 -07:00
Kenny Root
e4fd3d50c7 am 42a419b4: am 718af32a: Merge "Use long instead of int for file offsets" into jb-dev
* commit '42a419b4c0e7d16145e336ceec709dcefbdcf894':
  Use long instead of int for file offsets
2012-05-10 15:00:32 -07:00
Kenny Root
718af32a19 Merge "Use long instead of int for file offsets" into jb-dev 2012-05-10 14:55:35 -07:00
Jesse Wilson
bb0018d060 am 36b6999b: am 822b72ef: Merge "Rename Uri.normalize() to Uri.normalizeScheme()." into jb-dev
* commit '36b6999bf12866679b80b03ada1f20f516b35904':
  Rename Uri.normalize() to Uri.normalizeScheme().
2012-05-10 12:46:00 -07:00
Jesse Wilson
822b72efd8 Merge "Rename Uri.normalize() to Uri.normalizeScheme()." into jb-dev 2012-05-10 12:39:37 -07:00
Kenny Root
103d53005e Use long instead of int for file offsets
Use long instead of int so we don't run into a 2GB file limit.

Fix possible overflows in offset and length.

Change-Id: Idb3a34f5600f9c2372b9c89256f21757049fa43b
2012-05-10 11:48:21 -07:00
Dianne Hackborn
58d4f2e36f am e2e03913: am dd79ae6b: Merge "Add infrastructure for accessing "unstable" content providers." into jb-dev
* commit 'e2e0391389fce1a9fd9d5c5442ba1901b6d96211':
  Add infrastructure for accessing "unstable" content providers.
2012-05-10 11:38:52 -07:00
Jesse Wilson
abc43ddd8a Rename Uri.normalize() to Uri.normalizeScheme().
Change-Id: I67839656c7c1c16a5376c9894d699d2bad3c7a5c
2012-05-10 14:31:17 -04:00
Dianne Hackborn
652b6d1e59 Add infrastructure for accessing "unstable" content providers.
We have an API and some stuff that purports to this, but no real
implementation yet.

Change-Id: I93555440014a50fdf79fa3f65318d90fb82265b4
2012-05-09 18:18:40 -07:00
Jeff Brown
335f8726d7 am 8ab3f090: am 8c680128: Merge "Check for null fd when constructing AssetFileDescriptor." into jb-dev
* commit '8ab3f090c008091318bc0c0e8052f18132e720c2':
  Check for null fd when constructing AssetFileDescriptor.
2012-05-09 10:11:01 -07:00
Carlos Valdivia
e8308aafec am e0ea02c2: am 3fcf1c85: Merge "Fix a race condition with respect to clients of SyncStorageEngine." into jb-dev
* commit 'e0ea02c20ea7bcb495baab653a12087b8cd09890':
  Fix a race condition with respect to clients of SyncStorageEngine.
2012-05-09 10:10:13 -07:00
Jeff Brown
8fd851709f am a394efa3: am 947f1c8d: Merge "Move CancellationSignal to android.os package." into jb-dev
* commit 'a394efa33531ce36c432872ec56ad0c93a9999e7':
  Move CancellationSignal to android.os package.
2012-05-09 10:09:20 -07:00
Kenny Root
c72b502d89 am 83ea8609: am 29bb27ef: Merge "Add encryption parameters to package installation" into jb-dev
* commit '83ea86091bf94571912694c7caf8be1c21727f91':
  Add encryption parameters to package installation
2012-05-09 10:08:19 -07:00
Jeff Brown
8c68012809 Merge "Check for null fd when constructing AssetFileDescriptor." into jb-dev 2012-05-08 18:41:49 -07:00
Carlos Valdivia
3fcf1c8587 Merge "Fix a race condition with respect to clients of SyncStorageEngine." into jb-dev 2012-05-08 15:27:03 -07:00
Jeff Brown
af67fc65bf Check for null fd when constructing AssetFileDescriptor.
An AssetFileDescriptor with a null fd is pretty useless and should
never happen during normal operation.  It can't even be parcelled
without hitting an NPE.  To make it easier to find bugs where a null
fd might have been generated, check at construction time.

Bug: 5655036
Change-Id: I1da6dbee0cab9c11e309f3cebe698bf44dc5e27d
2012-05-08 14:29:09 -07:00
Jeff Brown
947f1c8db0 Merge "Move CancellationSignal to android.os package." into jb-dev 2012-05-08 10:51:12 -07:00
Jeff Brown
a7771df369 Move CancellationSignal to android.os package.
Bug: 6427830
Change-Id: I39451bb1e1d4a8d976ed1c671234f0c8c61658dd
2012-05-07 20:06:46 -07:00
Carlos Valdivia
3aca7d7bec Fix a race condition with respect to clients of SyncStorageEngine.
GetAuthorities will now return a better copy of AuthorityInfos.

Bug: 6388370
Change-Id: Iac532e6e40079dbafa6e1c8345bd74902d68cf85
2012-05-07 19:03:51 -07:00
Anonymous Coward
ceb1b0bfae Add encryption parameters to package installation
Change-Id: Ic9f8ab9f8110f08bb3c00725cfce5b8ee7b766f3
2012-05-07 16:34:49 -07:00
Dianne Hackborn
c77218e6b0 am 25fc66b8: am 7bfa1457: Merge "Finish up issue #6249094: Display permissions based on relevance to private data" into jb-dev
* commit '25fc66b898a35796af65ec7e3eb9b1584588e063':
  Finish up issue #6249094: Display permissions based on relevance to private data
2012-05-06 17:55:04 -07:00
Dianne Hackborn
7bfa14570e Merge "Finish up issue #6249094: Display permissions based on relevance to private data" into jb-dev 2012-05-06 17:49:53 -07:00
Dianne Hackborn
99222d212f Finish up issue #6249094: Display permissions based on relevance to private data
Added bitmaps for permission group icons.  We had to pick either
icons for a dark or light background, and it had to be light for
settings, so the installer theme has gone back to dark.

Tweaked the permission groups to match the icons.

Redid the group priorities to make them correct (they were written
with higher priorities being less important).

Fixed bug where priority was not being used for system apps.

Change-Id: Ia3d3f0c1614a11b4cfd11682ce9e6c9f87d75c06
2012-05-06 17:45:13 -07:00
Fred Quintana
94e4429086 am 5484e826: am 989c7532: Merge "fix expedited syncs. there were times when an expedited sync wouldn\'t correctly preempt non-expedited syncs" into jb-dev
* commit '5484e82612ef67630f10a0179dfad55716bcce2a':
  fix expedited syncs. there were times when an expedited sync wouldn't correctly preempt non-expedited syncs
2012-05-06 15:31:29 -07:00
Fred Quintana
dc47556cb3 fix expedited syncs. there were times when an expedited sync wouldn't
correctly preempt non-expedited syncs

Change-Id: Ia88ce6504c06d7c8e50e40362e8bf2b85bd0934b
2012-05-06 13:39:36 -07:00
Andy Stadler
66ff373f5f am 1f1aed5e: am c4be1b7e: Merge "Add System Tracing capability to Sync Manager" into jb-dev
* commit '1f1aed5e76efd27c69e597fd3eab91fe822bd850':
  Add System Tracing capability to Sync Manager
2012-05-04 16:35:48 -07:00
Andy Stadler
c4be1b7e96 Merge "Add System Tracing capability to Sync Manager" into jb-dev 2012-05-04 14:46:00 -07:00
Jim Miller
43dad01f5b am 360ca12b: am 516c25b3: Merge "Fix 6414061: Add new ACTION_ASSIST intent." into jb-dev
* commit '360ca12bf2914c0832da58f9e7963026799bf676':
  Fix 6414061: Add new ACTION_ASSIST intent.
2012-05-04 14:19:38 -07:00
Jim Miller
516c25b38a Merge "Fix 6414061: Add new ACTION_ASSIST intent." into jb-dev 2012-05-04 14:12:41 -07:00
Jim Miller
0799440ab3 Fix 6414061: Add new ACTION_ASSIST intent.
Change-Id: I3d334f67723ac89f6001267e0f06ad76190b929f
2012-05-04 13:52:14 -07:00