Commit Graph

1790 Commits

Author SHA1 Message Date
Dianne Hackborn
d8e1dbb6bc Rework ParceledListSlice to be much easier to use.
Take advantage of this to return better information about
packages filtered by permissions -- include the permissions
they have in the requested array.

Also fix issue #8026793 (Contact picture shows default pic
while searching for a contact in qsb) by using the base
package name of the Context when reporting the app name
of an operation.  Otherwise you could make a resource-only
context for another application and do calls through that
and get reported as the wrong app.

Change-Id: I5e0488bf773acea5a3d22f245641828e1a106fb8
2013-01-18 13:02:26 -08:00
Jeff Sharkey
66a017b634 Always give ContentResolver a valid Context.
Also add MockContentResolver constructor to provide a Context, and
move to singleton ActivityThread, since there is only one inside
each process.  This makes ActivityThread accessible from threads like
InstrumentationThread.

Change-Id: Ib8b18f1b9bba8820ff412d782a43511066eabf24
2013-01-17 18:25:47 -08:00
Dianne Hackborn
2125dd57cc Merge "AppOps: fix nested op tracking, new API to get apps using permissions." 2013-01-17 02:51:11 +00:00
Dianne Hackborn
e799175b6b AppOps: fix nested op tracking, new API to get apps using
permissions.

Change-Id: I20c7bd58febc01d6911a90440867eaacd133c464
2013-01-16 18:10:40 -08:00
Amith Yamasani
d4fe37bee7 Merge "Rename bindService to bindServiceAsUser to follow convention." 2013-01-16 23:26:30 +00:00
Amith Yamasani
27b89e6658 Rename bindService to bindServiceAsUser to follow convention.
This is for the multi-user version of bindService, not the original.

Change-Id: Ib2de35941196accf387b1a276a77e6f9af805ec0
2013-01-16 12:30:11 -08:00
Dianne Hackborn
35654b61e8 More work on App Ops service.
Implemented reading and writing state to retain information
across boots, API to retrieve state from it, improved location
manager interaction to monitor both coarse and fine access
and only note operations when location data is being delivered
back to app (not when it is just registering to get the data at
some time in the future).

Also implement tracking of read/write ops on contacts and the
call log.  This involved tweaking the content provider protocol
to pass over the name of the calling package, and some
infrastructure in the ContentProvider transport to note incoming
calls with the app ops service.  The contacts provider and call
log provider turn this on for themselves.

This also implements some of the mechanics of being able to ignore
incoming provider calls...  all that is left are some new APIs for
the real content provider implementation to be involved with
providing the correct behavior for query() (return an empty
cursor with the right columns) and insert() (need to figure out
what URI to return).

Change-Id: I36ebbcd63dee58264a480f3d3786891ca7cbdb4c
2013-01-16 12:11:01 -08:00
Sasha Levitskiy
f849124b6b Merge "Removed Throttle Manager as obsolete" 2013-01-15 16:56:30 -08:00
Sasha Levitskiy
ca6486e7f5 Removed Throttle Manager as obsolete
Change-Id: I63e8514f34c880d0badaab33a347f54a80c84da6
2013-01-14 16:59:33 -08:00
Scott Kennedy
57b59e025b am aebeea4c: am 5d6d6aab: am 8e45679a: am 026f9191: am 08342698: Merge "docs: Fix a bunch of issues" into jb-mr1-dev
* commit 'aebeea4cf39acae833b1b7f27a4c08d3b55dee37':
  docs: Fix a bunch of issues
2013-01-14 11:19:13 -08:00
Scott Kennedy
aebeea4cf3 am 5d6d6aab: am 8e45679a: am 026f9191: am 08342698: Merge "docs: Fix a bunch of issues" into jb-mr1-dev
* commit '5d6d6aab255aa17fde979d954c839402837b4243':
  docs: Fix a bunch of issues
2013-01-14 11:15:55 -08:00
Scott Kennedy
5d6d6aab25 am 8e45679a: am 026f9191: am 08342698: Merge "docs: Fix a bunch of issues" into jb-mr1-dev
* commit '8e45679adfe03271dd1cc627d6c4542649a0446a':
  docs: Fix a bunch of issues
2013-01-14 11:13:25 -08:00
Scott Kennedy
026f91915f am 08342698: Merge "docs: Fix a bunch of issues" into jb-mr1-dev
* commit '083426980dbe6607a0cfc8b4ec5944d5b414ecbe':
  docs: Fix a bunch of issues
2013-01-14 11:09:27 -08:00
Scott Kennedy
7ed189e457 docs: Fix a bunch of issues
External tracker 42609
External tracker 42607
External tracker 42604
External tracker 42600
External tracker 42574
External tracker 42450
External tracker 41050
External tracker 40995
External tracker 40970
External tracker 40935
External tracker 40507
External tracker 40481
External tracker 40435
External tracker 40406
External tracker 40297
External tracker 40281
External tracker 39978
External tracker 39929
External tracker 39803
External tracker 39715
External tracker 39441

Change-Id: If4215cef850ba8e4e8df356a68192566806e7914
2013-01-11 23:44:11 -08:00
Nick Kralevich
6b0fb36870 Merge "Revert "App home directories are now 0700 for targetSdkVersion > 17"" 2013-01-09 16:10:14 -08:00
Nick Kralevich
1506921e8e Revert "App home directories are now 0700 for targetSdkVersion > 17"
This reverts commit 92091fa963.

Bug: 7966399
Bug: 7208882
2013-01-09 15:54:56 -08:00
Dianne Hackborn
a06de0f29b New "app ops" service.
Initial implementation, tracking use of the vibrator, GPS,
and location reports.

Also includes an update to battery stats to also keep track of
vibrator usage (since I had to be in the vibrator code anyway
to instrument it).

The service itself is only half-done.  Currently no API to
retrieve the data (which once there will allow us to show you
which apps are currently causing the GPS to run and who has
recently accessed your location), it doesn't persist its data
like it should, and no way to tell it to reject app requests
for various operations.

But hey, it's a start!

Change-Id: I05b8d76cc4a4f7f37bc758c1701f51f9e0550e15
2013-01-09 12:47:47 -08:00
Jeff Brown
c21b5a019c Fix cursor window leak when query execution fails.
Ensure that the Cursor object is closed if a query on a
content provider fails due to an error or is canceled during
execution.  There are several places in the code where
similar problems can occur.

To further reduce the likelihood of leaks, close the cursor
window immediately when a query fails.

Bug: 7278577
Change-Id: I8c686c259de80a162b9086628a817d57f09fdd13
2013-01-08 15:32:50 -08:00
Dianne Hackborn
017129481b am 449f006f: am 2a8de804: am 350d5168: Merge "Correcting typo in doc of MEDIA_XXX intents"
* commit '449f006f9391b8c42d6d95ba06970216e8ef9f84':
  Correcting typo in doc of MEDIA_XXX intents
2013-01-07 12:24:09 -08:00
Dianne Hackborn
2a8de804a2 am 350d5168: Merge "Correcting typo in doc of MEDIA_XXX intents"
* commit '350d5168e495c642873ee511d4e8dc27ac5377ce':
  Correcting typo in doc of MEDIA_XXX intents
2013-01-07 12:16:40 -08:00
suyi Yuan
be7af83829 Correcting typo in doc of MEDIA_XXX intents
Correcting typo in documents of MEDIA_MOUNTED,
MEDIA_UNMOUNTED,MEDIA_UNMOUNTABLE intents, which
may be confusing to APP developers.

Change-Id: Id909b7bfad98e305b8054978f054f4fb9b705311
2013-01-04 21:21:59 +08:00
Christopher Tate
2bc6eb8c17 Document ContentProvider's API a bit more explicitly
In particular, call out parameters that must not be null.

Change-Id: I67af73163e36efefefa7df86499937f998be5b00
2013-01-03 12:16:54 -08:00
John Spurlock
330dd53484 Remove remaining doc references to StyledAttributes.
It appears StyledAttributes was renamed to TypedArray
prior to fw 1.0.  Leaving references to the old name
around in the public docs is confusing.

Deliberating leaving...
   tests/coretests/src/android/widget/LabelView.java
... as is - it's clearly unused.

Change-Id: I3f66e5f9cbe945d9d86530d37b88369b401f054d
2012-12-18 12:03:11 -05:00
Nick Kralevich
92091fa963 App home directories are now 0700 for targetSdkVersion > 17
Pass targetSdkVersion to installd so it knows the appropriate
permissions to apply to the app's home directory.

Bug: 7208882
Change-Id: Ia62ed36b32ee5af01077fb10a586024411be8ed4
2012-12-14 11:53:10 -08:00
Christopher Tate
1423fa30c2 am 1de62393: am 534de491: Merge "Make immersive mode public & imply update locking" into jb-mr1-aah-dev
* commit '1de623939090993d03a7c398d09e2d13950d682b':
  Make immersive mode public & imply update locking
2012-12-11 16:15:38 -08:00
Christopher Tate
1de6239390 am 534de491: Merge "Make immersive mode public & imply update locking" into jb-mr1-aah-dev
* commit '534de491e6522465a7ad12d7cba9b2f80deab364':
  Make immersive mode public & imply update locking
2012-12-11 16:13:51 -08:00
Jeff Sharkey
7a96c39c51 Move lingering services to services.jar.
This helps reduce the pressure on framework.jar, and makes it clear
that it should only be used by the system_server.

Bug: 7333397
Change-Id: I0858904239535380fbf30562b793e277d8c3f054
2012-12-11 09:50:50 -08:00
Christopher Tate
73c2aee40a Make immersive mode public & imply update locking
Activity.setImmersive(boolean) / android:immersive="bool" are now public.
In addition, if the foreground activity is immersive then an update lock
will be held on its behalf.  This lets applications such as movie players
suppress the display of intrusive notifications, OTA-availability dialogs,
and the like while they are displaying content that ought not to be
rudely interrupted.

The update lock aspect of this mode is *advisory*, not binding -- the
update mechanism is not actually constrained; it simply uses this information
in deciding whether/when to prompt the user.  It's more a guideline than
a rule.

Bug 7681380

Change-Id: I3c412a84cbf3933e3bf0168f2c71c54a86e4b7e5
2012-12-10 18:40:57 -08:00
Dianne Hackborn
42e06c8d6b am 5007dea9: am bac91ebd: am 860d0cd4: Merge "Cleaner initial boot." into jb-mr1.1-dev
* commit '5007dea96e357e11316f5c9a4aea1123ba9dd4c1':
  Cleaner initial boot.
2012-11-29 14:32:49 -08:00
Dianne Hackborn
36893b16ce am 221d59f7: am afdd978c: am 68e0da7e: Merge "Quiet down a lot of logging." into jb-mr1.1-dev
* commit '221d59f723584d316ea225bdaf1bc75cbfd7a794':
  Quiet down a lot of logging.
2012-11-29 14:32:25 -08:00
Dianne Hackborn
5007dea96e am bac91ebd: am 860d0cd4: Merge "Cleaner initial boot." into jb-mr1.1-dev
* commit 'bac91ebdd0ae310a6b92a8b4bb91613025238356':
  Cleaner initial boot.
2012-11-29 14:26:37 -08:00
Dianne Hackborn
221d59f723 am afdd978c: am 68e0da7e: Merge "Quiet down a lot of logging." into jb-mr1.1-dev
* commit 'afdd978ccd8d45ac789873dd4cf0ab0dd3f46d20':
  Quiet down a lot of logging.
2012-11-29 14:25:40 -08:00
Dianne Hackborn
13579ed330 Cleaner initial boot.
This does some cleanup of the initial boot, especially when
booting in "no core apps" mode for encryption/decryption.

Change-Id: Ifb3949f580e52f54559e603c4b0b104f6bac2f6c
2012-11-28 18:09:01 -08:00
Dianne Hackborn
40e9f2922c Quiet down a lot of logging.
Also fix a little problem where the USER_STARTED broadcasts
were not being sent as ordered broadcasts(!).

Change-Id: I3aa3e0a9b3900967cdd2d115ee103371b0a50c41
2012-11-27 19:12:23 -08:00
Romain Guy
a8f6d5f072 Add support for face attribute to HTML string resources
Bug #7480719

This change also adds the alias "color" for the attribute "fgcolor".
This change also unifies HTML colors parsing between the Html class
and StringBlock for consistency.

Change-Id: I696a6e080387901d88e9baf7cb989b892f14b9db
2012-11-27 14:34:33 -08:00
Jeff Sharkey
8e2ffc76a9 am 9634e970: am bfea4f04: am f5377a72: Merge "Useful annotations for code documentation." into jb-mr1.1-dev
* commit '9634e970679c687572e2da84250adc8baf91a8c3':
  Useful annotations for code documentation.
2012-11-16 10:37:59 -08:00
Jeff Sharkey
9634e97067 am bfea4f04: am f5377a72: Merge "Useful annotations for code documentation." into jb-mr1.1-dev
* commit 'bfea4f04f226f1adf374412628d5945c380382a7':
  Useful annotations for code documentation.
2012-11-15 11:56:19 -08:00
Jeff Sharkey
8b2c3a1460 Useful annotations for code documentation.
Bug: 6537978
Change-Id: I806c3c09e3255f8789455f13bf37c1dde2a93f1f
2012-11-12 12:42:17 -08:00
Kenny Root
7b172a49a9 am 58ed5d74: am 768d9e1a: Merge "Correct executable bit for source files"
* commit '58ed5d748c0b9b64845975ef5844ad313de7c3f6':
  Correct executable bit for source files
2012-11-07 13:08:25 -08:00
Kenny Root
58ed5d748c am 768d9e1a: Merge "Correct executable bit for source files"
* commit '768d9e1a72ceee7d4a5f608776b87b62d6ce4a04':
  Correct executable bit for source files
2012-11-07 11:52:12 -08:00
Kenny Root
3a084af2e9 Correct executable bit for source files
Many media files and source code files were marked as executable in Git.
Remove those.

Also a shell script and python script were not marked as executable.

Change-Id: Ieb51bafb46c895a21d2e83696f5a901ba752b2c5
2012-11-07 10:27:31 -08:00
Jeff Sharkey
252b262f25 am d6d2ac80: am c4715678: am 1c8135ad: Merge "Update docs for multi-user storage behavior." into jb-mr1-dev
* commit 'd6d2ac8042350b2949f0d0369cb7bc22bb1c55f0':
  Update docs for multi-user storage behavior.
2012-10-23 09:17:18 -07:00
Jeff Sharkey
1c8135adba Merge "Update docs for multi-user storage behavior." into jb-mr1-dev 2012-10-23 09:08:42 -07:00
Jeff Sharkey
8c16579994 Update docs for multi-user storage behavior.
Define external storage as being isolated for each user, with the
caveat for shared OBB files. Also mention external storage
permissions.

Bug: 7384941
Change-Id: Ib156b5874c5587749d7bc066791e9e88d931b174
2012-10-22 15:04:35 -07:00
Amith Yamasani
6861a6147c am e78d50b4: am 6eb9844c: am 22788981: Merge "System server should always send broadcasts to a specific or all users" into jb-mr1-dev
* commit 'e78d50b4a02a8242a99dea4cfacee2a7c9e7f122':
  System server should always send broadcasts to a specific or all users
2012-10-22 13:40:12 -07:00
Amith Yamasani
cd75706117 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
2012-10-22 12:38:53 -07:00
Amith Yamasani
0ad9356bdc am 283d1409: am f624d72c: am 8074e98b: Merge "Fix crashes when quickly adding and removing users" into jb-mr1-dev
* commit '283d1409ddadd35cd41b5496659d3a24dc365fb0':
  Fix crashes when quickly adding and removing users
2012-10-21 07:53:56 -07:00
Amith Yamasani
8074e98b20 Merge "Fix crashes when quickly adding and removing users" into jb-mr1-dev 2012-10-21 07:44:46 -07:00
Amith Yamasani
db6a14cc85 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
2012-10-19 16:23:30 -07:00
Christopher Tate
58fc8e5ada am 9fffd565: am e9472f29: am 935415a0: Merge "Document immutable requirement of SharedPreferences return objects" into jb-mr1-dev
* commit '9fffd565a927f03d10c2009b741e7222ddd4967e':
  Document immutable requirement of SharedPreferences return objects
2012-10-19 14:46:48 -07:00