summaryrefslogtreecommitdiff
path: root/services/java/com/android/server/AppOpsService.java
AgeCommit message (Collapse)Author
2013-12-19Move some system services to separate directoriesAmith Yamasani
Refactored the directory structure so that services can be optionally excluded. This is step 1. Will be followed by another change that makes it possible to remove services from the build. Change-Id: Ideacedfd34b5e213217ad3ff4ebb21c4a8e73f85
2013-09-26Fix issue #10919261: Don't clear OP_WRITE_SMS when resetting app prefsDianne Hackborn
Add a new array indicating whether each op allows itself to be reset, and use it. Change-Id: I494f630bda170e061196a380563512e9e77b51a8
2013-09-16Implement new method for handling SMS/MMS on the platformDavid Braun
Multi project change: The changes in this project add the new (hidden) default sms application setting to Settings.Secure and updates AppOps to support the concept of an op defaulting to something other than allowed. OP_WRITE_SMS is set to default to MODE_IGNORED. Bug: 10449618 Change-Id: I37619784ac70c27cf9fbcbfcac1b263398bc4e01
2013-09-06Provide calling package to ContentProviders.Jeff Sharkey
The calling package is important for ContentProviders that want to grant Uri permissions as a side effect of operations, so offer it through a new API. Validates the provided package against the calling UID before returning. Bug: 10626527 Change-Id: I7277880eebbd48444c024bcf5f69199133cd59e4
2013-08-08am 42380b6d: am 9f11f105: am 7f09ec39: Fix issue #10226007: Reset apps ↵Dianne Hackborn
restores most of the changed settings... * commit '42380b6de656ca1336b8b99dbc7995cfbf875924': Fix issue #10226007: Reset apps restores most of the changed settings...
2013-08-07Fix issue #10226007: Reset apps restores most of the changed settings...Dianne Hackborn
...to original but not all modified ones Very stupid mistakes in messing up the iteration when pruning op entries. Change-Id: Ie536b9095f797fcd2b86c9a386a72746796430d1
2013-08-02resolved conflicts for merge of c8911ddd to masterDianne Hackborn
Change-Id: I790b547268a23848577199256fc5abc9bdb7abb8
2013-08-02Add new app ops method to reset all op modes.Dianne Hackborn
Change-Id: I5ee6764de8dc31d812e5a788914ab0099bbef4c0
2013-08-02am 0eab98dd: am 019f4385: am 7925e7cc: Merge "Revert "Add version identifier ↵Dave Burke
to app ops."" into jb-mr2-dev * commit '0eab98dd24b3a4272d5e9a41f353071f8508ec2a': Revert "Add version identifier to app ops."
2013-08-02Revert "Add version identifier to app ops."Dave Burke
This reverts commit 483a6bbfc118409b9c46b226cf0aa6afdc4d9159. Change-Id: I91d6b8b8d1789089bf9764e734f7fe59d03151a2
2013-08-01am 95990fe4: am aa268f8f: am d364859c: Merge "Add version identifier to app ↵Sascha Prueter
ops." into jb-mr2-dev * commit '95990fe4c38641ea574efe9224ae279db61cde0f': Add version identifier to app ops.
2013-08-01Add version identifier to app ops.Dianne Hackborn
All old versions drop their modes except for the notification op (which is the only one there is currently a user-visible control for). Change-Id: I9e09cebe63e9ea81f2adc01aef7d1a5a59f57a56
2013-07-17Make it safe to use start/stop app ops outside of system procDianne Hackborn
We now keep track of all of the active start operations per non-system process, so they can be cleaned up if the process goes away. Change-Id: I9d05f1e0281c47dbe1213de014f0491f1359685c
2013-05-20Add app ops for wake locks.Dianne Hackborn
Currently only supports auditing, not disabling. Change-Id: Ie85f02c29b490d96e073f54d59e165d48c7c00c9
2013-02-11App ops: cleanup, handle root and shell, perms.Dianne Hackborn
Rework how the shell user is defined so that it is associated with an actual apk, instead of being a free roaming uid with special permissions assigned to it. This allows us to correctly account for its operations in app ops. Implement a special case for the root user in app ops -- it is always allowed, always with the package name "root". Add various code to take care of cleaning up package state from app ops -- when packages are uninstalled, and during boot if any packages currently being stored no longer exist. Also fix a bug in the activity manager to correctly grant permissions in all cases when onNewIntent() is being called. Change-Id: Iae9f6d793ee48b93518c984ad957e46ae4582581
2013-02-06App ops: track system windows, monitoring changes.Dianne Hackborn
Change-Id: I273e82bdad66ada3bf0f7ec9176bc304b9ee1ee8
2013-02-05App ops: add op for writing settings.Dianne Hackborn
Also fix a build. And fix a bug that I think was introduced in the multi-user work that removed the permission check for writing to settings...! Change-Id: I5945682faa789ffc78fd3546c0df7d03693f106d
2013-02-01App ops: vibration, neighboring cells, dialing, etc.Dianne Hackborn
Improve handling of vibration op, so that apps are better blamed (there is now a hidden vibrator API that supplies the app to blame, and the system now uses this when vibrating on behalf of an app). Add operation for retrieving neighboring cell information. Add a new op for calling a phone number. This required plumbing information about the launching package name through the activity manager, which required changing the internal startActivity class, which required hitting a ton of code that uses those internal APIs. Change-Id: I3f8015634fdb296558f07fe654fb8d53e5c94d07
2013-01-25App ops: you can now turn off operations.Dianne Hackborn
Also add new ops for calendar and wi-fi scans, finish implementing rejection of content provider calls, fix issues with rejecting location calls, fix bug in the new pm call to retrieve apps with permissions. Change-Id: I29d9f8600bfbbf6561abf6d491907e2bbf6af417
2013-01-18New API to get app op information about a single package.Dianne Hackborn
Change-Id: I986453d9bb4161da467fb820b12502464e936483
2013-01-16AppOps: fix nested op tracking, new API to get apps usingDianne Hackborn
permissions. Change-Id: I20c7bd58febc01d6911a90440867eaacd133c464
2013-01-16More work on App Ops service.Dianne Hackborn
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-11WorkSource can now track package names.Dianne Hackborn
Use this to track the package name of applications accessing GPS. And now the app ops service can enforce that callers must provide valid package names. Change-Id: I842a0abe236ea85f77926d708547f0f95c24bd49
2013-01-09New "app ops" service.Dianne Hackborn
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