Commit Graph

2164 Commits

Author SHA1 Message Date
fionaxu
f44c73abb2 DO NOT MERGE revert public api loadSafeLabel
Bug: 28557603
Change-Id: Ic9d9ae0b59fe86f70aaea311380cacf222ee3a0c
2016-06-27 23:52:19 -07:00
fionaxu
4e33c4f8b1 DO NOT MERGE fix build breakage on k
Bug: 28557603
Change-Id: I3beae9e8cb6315654d7681d484fbb861fa8b1889
2016-06-07 17:55:27 -07:00
fionaxu
be2865a60a Backport loadSafeLabel changes
Bug:23531798
Bug:28557603
Change-Id: Iee49f7c37d6a42fe74077bb15ed47919d351d172
2016-06-07 22:51:28 +00:00
Todd Kennedy
60351d3be2 DO NOT MERGE Fix intent filter priorities
Since this is a backport, there is only one rule that guards intent
filter priorities:
1) Updates will NOT be granted a priority greater than the priority
   defined on the system image.

NOTE: I had to bring in pieces of ag/526831 so intent filters could
be collected and matched

Bug: 27450489
Change-Id: Ifcec4d7a59e684331399abc41eea1bd6876155a4
2016-04-07 16:40:18 -07:00
Matthew Williams
a5cafd2a93 DO NOT MERGE Redact Account info from getCurrentSyncs
BUG:26094635
If the caller to ContentResolver#getCurrentSyncs does not hold the
GET_ACCOUNTS permission, return a SyncInfo object that does not
contain any Account information.

Change-Id: I5628ebe1f56c8e3f784aaf1b3281e6b829d19314
(cherry picked from commit b63057e698)
2016-01-21 14:15:11 +00:00
Shreyas Basarge
2f137b7705 Sync extras bundle comparison can throw NPE
Bug: 23591205
Change-Id: I960dfcc1584c0a17685790d5d722eaf11b930e25
2015-11-12 15:32:44 +00:00
Jon Larimer
a5ccca2427 am 2982d648: am de9a76ed: am fc731e6e: Merge "Fix ParceledListSlice to enforce the same concrete types among its elements." into jb-mr2-dev
* commit '2982d64802ed0d5b59130680c43485e9d7862e50':
  Fix ParceledListSlice to enforce the same concrete types among its elements.
2015-01-29 18:25:28 +00:00
Jon Larimer
2982d64802 am de9a76ed: am fc731e6e: Merge "Fix ParceledListSlice to enforce the same concrete types among its elements." into jb-mr2-dev
* commit 'de9a76ed997c300a6c5f2f82c517719503af9045':
  Fix ParceledListSlice to enforce the same concrete types among its elements.
2015-01-29 18:12:01 +00:00
Jon Larimer
de9a76ed99 am fc731e6e: Merge "Fix ParceledListSlice to enforce the same concrete types among its elements." into jb-mr2-dev
* commit 'fc731e6e40f6f449b8e7ac72c2cd36a57c04a32b':
  Fix ParceledListSlice to enforce the same concrete types among its elements.
2015-01-29 18:00:58 +00:00
Adam Lesinski
f741c37273 Fix ParceledListSlice to enforce the same concrete types among its elements.
Bug:17671747
Change-Id: I896f75738e5b464ccb6c03290f139cc2fa72f966
(cherry picked from commit 3df1c38ee0)
2015-01-28 10:47:54 +00:00
Deepanshu Gupta
cebf960525 am 9b1c46df: am 3c00b28b: Fix theme/style resolution in Layoutlib [DO NOT MERGE]
* commit '9b1c46df60dec6af81b9cbfcbf8a70192da66d64':
  Fix theme/style resolution in Layoutlib [DO NOT MERGE]
2014-05-02 19:30:30 +00:00
Deepanshu Gupta
9b1c46df60 am 3c00b28b: Fix theme/style resolution in Layoutlib [DO NOT MERGE]
* commit '3c00b28bf60ab01b449e16df045238f4bae4d700':
  Fix theme/style resolution in Layoutlib [DO NOT MERGE]
2014-05-02 19:23:50 +00:00
Deepanshu Gupta
3c00b28bf6 Fix theme/style resolution in Layoutlib [DO NOT MERGE]
Cherry picked from klp-dev from
Change-Id: If1e7187645f0b0388f7b97d742395efd228b347a which was
cherrypicked from master with the following

Change-Id: Icfb91e566666408802dadc0e2070991151b16b9d
(cherry picked from commit f1e7187645)
2014-04-25 18:58:15 -07:00
Kenny Root
cf677a37fb am e00c9185: am 41ec218e: am 6888bee5: am 5a0cc789: am 2ed5f771: am 47231936: am 02bc4b04: am 4a62a6dc: am 451ed5f0: am 3ecaa88d: am ecb013db: Merge "Use hidden API to validate APK chains" into jb-dev
* commit 'e00c9185262c675f1680920c258413299995042a':
  Use hidden API to validate APK chains
2014-04-18 23:00:37 +00:00
Kenny Root
e00c918526 am 41ec218e: am 6888bee5: am 5a0cc789: am 2ed5f771: am 47231936: am 02bc4b04: am 4a62a6dc: am 451ed5f0: am 3ecaa88d: am ecb013db: Merge "Use hidden API to validate APK chains" into jb-dev
* commit '41ec218e5f92904fe99c74bc35b9f5e4003c777a':
  Use hidden API to validate APK chains
2014-04-18 22:56:26 +00:00
Kenny Root
41ec218e5f am 6888bee5: am 5a0cc789: am 2ed5f771: am 47231936: am 02bc4b04: am 4a62a6dc: am 451ed5f0: am 3ecaa88d: am ecb013db: Merge "Use hidden API to validate APK chains" into jb-dev
* commit '6888bee598b8c88f7a93ef2da06dd5659cc92dc6':
  Use hidden API to validate APK chains
2014-04-18 22:50:12 +00:00
Kenny Root
6888bee598 am 5a0cc789: am 2ed5f771: am 47231936: am 02bc4b04: am 4a62a6dc: am 451ed5f0: am 3ecaa88d: am ecb013db: Merge "Use hidden API to validate APK chains" into jb-dev
* commit '5a0cc78929bf56c153696ffa16b602acfcc40089':
  Use hidden API to validate APK chains
2014-04-18 22:43:08 +00:00
Kenny Root
5a0cc78929 am 2ed5f771: am 47231936: am 02bc4b04: am 4a62a6dc: am 451ed5f0: am 3ecaa88d: am ecb013db: Merge "Use hidden API to validate APK chains" into jb-dev
* commit '2ed5f771c47c16e9c2be1f2025ef0a826f0290c3':
  Use hidden API to validate APK chains
2014-04-18 22:37:38 +00:00
Kenny Root
2ed5f771c4 am 47231936: am 02bc4b04: am 4a62a6dc: am 451ed5f0: am 3ecaa88d: am ecb013db: Merge "Use hidden API to validate APK chains" into jb-dev
* commit '47231936c0593b87c3c9898767327f1516a7ec22':
  Use hidden API to validate APK chains
2014-04-18 22:31:08 +00:00
Kenny Root
4a62a6dce9 am 451ed5f0: am 3ecaa88d: am ecb013db: Merge "Use hidden API to validate APK chains" into jb-dev
* commit '451ed5f077b9f95deae809ae620bc210c253b922':
  Use hidden API to validate APK chains
2014-04-18 22:14:14 +00:00
Kenny Root
451ed5f077 am 3ecaa88d: am ecb013db: Merge "Use hidden API to validate APK chains" into jb-dev
* commit '3ecaa88d83d04a0fd55b494829badbb41016f5a1':
  Use hidden API to validate APK chains
2014-04-18 21:33:04 +00:00
Kenny Root
3ecaa88d83 am ecb013db: Merge "Use hidden API to validate APK chains" into jb-dev
* commit 'ecb013dbff5e33b95c49015fa375579e055911ae':
  Use hidden API to validate APK chains
2014-04-18 18:14:32 +00:00
Kenny Root
16c6b177ee Use hidden API to validate APK chains
Bug: 13678484
Change-Id: I28dedab74b0e24d47ab9f2190298156c909e9d54
2014-04-17 14:03:33 -07:00
Deepanshu Gupta
f1e7187645 Fix theme/style resolution in Layoutlib [DO NOT MERGE]
Change-Id: Icfb91e566666408802dadc0e2070991151b16b9d
(cherry picked from commit bfec73c2db)

Conflicts:
	core/java/android/content/res/Resources.java
	tools/layoutlib/create/src/com/android/tools/layoutlib/create/CreateInfo.java
2014-04-15 20:03:19 -07:00
Christopher Tate
99437f252b Merge "Ensure recipient can be launched before attempting broadcast delivery" into klp-dev 2013-11-14 22:59:20 +00:00
Christopher Tate
ba629da331 Ensure recipient can be launched before attempting broadcast delivery
User removal or eviction inherently races with broadcast delivery.  This
patch introduces a latest-possible recheck of the availbility of the
target application before attempting to send it a broadcast.

Once the process has actually been spun up the system is essentially
committed to presenting it as a running application, and there is no
later check of the availability of the app: the failure mode for
continuing to attempt delivery is a crash *in the app process*,
and is user-visible.

We now check the app+userid existence of the intended recipient
just prior to committing to launch its process for receipt, and
if it is no longer available we simply skip that receiver and
continue normally.

Bug 11652784
Bug 11272019
Bug 8263020

Change-Id: Ib19ba2af493250890db7371c1a9f853772db1af0
2013-11-14 12:37:31 -08:00
Matthew Williams
a7456e46f4 SyncManager now returns copy on getCurrentSyncs()
Bug:11559103
Added a new getCurrentSyncsCopy() that is public. The other version
is needed for internal SSE calls.

Change-Id: I0287f039a6f75abf04b65b85cb30f78353aeef4f
2013-11-13 18:17:54 -08:00
Jeff Sharkey
8a2998eade Better enforcement in DocumentsProvider.call().
Use ContentProvider.enforceWritePermissionInner() to handle all edge
cases around checking if caller has write permissions.  This fixes
bug where call() would throw if caller and provider were the same app.

Bug: 11464234
Change-Id: Iace8e0e4243d56ed1cdcc9680383103975107036
2013-10-31 14:55:44 -07:00
Jeff Sharkey
e8c00d8ed4 Improve DocumentsProvider and contract docs.
Bug: 10567557
Change-Id: I71e7f7ad172e9986e58b9c9533b1c948c5530397
2013-10-15 16:44:22 -07:00
Jeff Sharkey
adef88a0a9 Improve OPEN/CREATE_DOC docs.
Bug: 10936473
Change-Id: I4378aaaf927f114982191efd4f9887dad075390d
2013-10-15 13:54:47 -07:00
Jeff Sharkey
6feb50b826 Improve external storage docs on Context.
Bug: 10461652
Change-Id: I42a3d887418e126f9dc2a9be8060a8eedd425f8e
2013-10-15 13:01:33 -07:00
Jeff Sharkey
c1c8f3f97d Add extras to AFD, send orientation metadata.
AssetFileDescriptor augments a ParcelFileDescriptor with details
about how it should be interpreted, so extend it to support a Bundle
of extras.  Then use these extras to share thumbnail orientation
metadata.

The raw image data of EXIF thumbnails matches the orientation of
the enclosing image, but the thumbnail data doesn't repeat the EXIF
flags.  This meant that receivers of openDocumentThumbnail() would
get an image that needed to be transformed, but without enough
context to actually transform it.

Instead of transforming and recompressing the image on the fly on
the provider side, send a transformation hint that the receiver
side can interpret.

Bug: 11205688
Change-Id: Ibc5a7ad002377a55e6ffcb5ac5c8829841002e06
2013-10-14 15:28:19 -07:00
Aravind Akella
45ca531e77 Merge "Adding stepcounter & stepdetector feature strings." into klp-dev 2013-10-13 22:48:03 +00:00
Eino-Ville Talvala
d38b1302b7 Merge "DO NOT MERGE: Hide new camera API." into klp-dev 2013-10-13 01:50:30 +00:00
Aravind Akella
068b0c05fe Adding stepcounter & stepdetector feature strings.
Change-Id: Ic8cc95612f776db7cb1d1c13a228d5cd8ed64f56
2013-10-12 18:47:00 -07:00
Matthew Williams
32551ae519 Merge "Fix infinite boot-loop bug in SM." into klp-dev 2013-10-11 21:26:19 +00:00
Matthew Williams
632515b9d0 Fix infinite boot-loop bug in SM.
Bug:11064918
If the ContentResolver sync API is used with the empty ("")
string as a provider, the ContentService will throw an RTE.
This cl addresses all the entry points of the API that could
allow this, as well as adds an ifEmpty check at the point of
failure.
Also removed RTE throws from public functions(no point in
crashing the phone).

Change-Id: I57427d12a6cafb3e6d7a32ca0c10b05315b20580
2013-10-11 13:18:22 -07:00
Eino-Ville Talvala
cd92588528 DO NOT MERGE: Hide new camera API.
Not yet ready.

Bug: 11141002

Change-Id: I4704bffb9ba36af47a66dc5b49cbba00be623aae
2013-10-11 19:26:08 +00:00
Dianne Hackborn
0ea920d839 Small IntentFilter docs improvement.
Change-Id: I52522e1c007c02d2c4fae8665369d92971689fd2
2013-10-11 09:40:18 -07:00
Dianne Hackborn
ebc15ef80f Fix some doc issues.
Bug: 11079621
Bug: 10461610
Bug: 10461369
Bug: 10461417
Change-Id: I7fd966f3cda0660ba20fa15d7164dcac95efadd3
2013-10-09 17:36:57 -07:00
Jeff Sharkey
bcaac0adec Surface outgoing Uri permission grants.
This enables apps to discover and clean up persisted Uri grants when
the underlying Uri becomes invalid, such as when an account is
removed.

Bug: 11142566
Change-Id: Ieeb36cb1155acf226327ebe91cdd30b822d69d1b
2013-10-09 14:32:11 -07:00
Jeff Sharkey
bcc77b502b Merge "Add <intent-filter> support to <provider>." into klp-dev 2013-10-07 21:41:45 +00:00
Jeff Sharkey
85f5f81320 Add <intent-filter> support to <provider>.
For the new documents work, we're only interested in the subset of
ContentProviders that actually implement DocumentsContract.  Instead
of returning all providers, add <intent-filter> support to make it
easier to limit the set of returned ProviderInfo.

Define a well-known action for DocumentsProviders, and start using it
when querying for roots.  Continue supporting the old <meta-data>
approach until all apps have been updated.

Bug: 8599233
Change-Id: I05f049bba21311f5421738002f99ee214447c909
2013-10-07 14:19:13 -07:00
Alex Ray
0c9d61f098 Add Consumer IR feature
Bug: 10676690
Change-Id: Id2c118225dc6ef259f5ed97da4071e9b6de3a83a
2013-10-03 18:19:38 -07:00
Dianne Hackborn
6bc3789b39 KLP/KitKat is now API 19.
Bug: 10348975

Change-Id: I19bf1a56064deda2e59085520960aac8ce3a825b
2013-10-03 12:17:31 -07:00
Jeff Sharkey
d01571e6d4 Isolate calls to each remote DocumentsProvider.
All background work is going through AsyncTasks, which uses a shared
thread pool.  Even with the new ContentProviderClient logic to detect
ANRs, the UI can still appear to be unresponsive for 20 seconds, even
if the user attempted to switch to a different backend.  In the worst
case, a backlog of thumbnail requests would end up wedging Loaders
for a long time, since they all share the same THREAD_POOL_EXECUTOR.

This change isolates calls to each provider onto their own thread,
which they're free to wedge and recover from over time.

It also means we no longer need a dedicated thread pool for recents
loading, and can use a simpler Semaphore instead.

Disables thumbnails in recents on svelte devices.

Bug: 10993301, 11014856
Change-Id: I7f8a5bbb5f64437e006cb2c48b7e854136d5c38c
2013-10-02 08:54:02 -07:00
Jeff Sharkey
7aa7601c09 Detect wedged ContentProviders, treat as ANR.
All ContentProvider calls are currently blocking, making it hard for
an app to recover when a remote provider is wedged.  This change adds
hidden support to ContentProviderClient to timeout remote calls,
treating them as ANRs.  This behavior is disabled by default.

Update DocumentsUI to use a 20 second timeout whenever interacting
with a storage provider.

Bug: 10993301, 10819461, 10852518
Change-Id: I10fa3c425c6a7225fff9cb7a0a07659028230cd3
2013-10-01 09:50:41 -07:00
Jeff Sharkey
e66c1778f8 Require that persistable Uri permissions be taken.
Change our Intent flag to indicate that a Uri permission grant is
persistable, but don't actually persist it until explicitly taken by
the receiving app.  This prevents apps from spamming each other if
persisted permissions aren't really required.

Remember the last time a persisted grant was taken by an app, and
use this to prune away the oldest grants when the number of grants
grows too large.  Allow apps to query persisted grants they are
holding, and allow them to release previously persisted grants. Add
public UriPermission class to return grant details and timestamp.

Track various permission strengths separately, and combine together
after each mutation pass.  Persistable grants are currently treated
like global grants, but they could be moved to have owners in the
future.  Require that grant holders trying to extend a persistable
permission actually hold a persistable permission themselves.

Bug: 10835779
Change-Id: I95b2f797c04ce7fd2612f9a644685dbd44e03759
2013-09-25 15:16:41 -07:00
Dianne Hackborn
6d8dfbd814 Fix issue #10848916: "Always" button is not working.
The problem was that the ResolverActivity filters some activities
out of the list it shows, but it uses that display list as the
list of components the preference is set against when ultimately
setting it on the package manager...  but that filtered list is *not*
the right component set, since it is not the same as the package
manager's view on it.

The fix here is to retain the original set of matching components
and use that when setting the preferred activity.  Note that this
does mean that in very unusual cases where filtering is happeing
(such as one of the activities not being exported but being seen
as a possible completion from another app), then you will be setting
the preference for the complete set.  Ultimately we probably need
to have the package manager apply these filtering rules up-front so
this is all consistent, but this is a very rare case so not that
important.

And then most of the change here is just improving the debug
output for intent resolution.

Change-Id: Ie35ac2c05a45946439951bbf41433c8b7de79c05
2013-09-24 14:16:38 -07:00
Jeff Sharkey
5e1a5e5bad Merge "Create unique files, root ordering, UI bugs." into klp-dev 2013-09-22 19:55:19 +00:00