407 Commits

Author SHA1 Message Date
Jeff Sharkey
6fbb5553a5 Merge "Protect more system broadcasts." 2013-06-13 18:55:21 +00:00
Jeff Sharkey
61277dfcd9 Protect more system broadcasts.
Bug: 8877514
Change-Id: Iaff8a5fbfab2c48bf26ce611fe2caff4f22d9152
2013-06-12 18:16:01 -07:00
Scott Main
81888d5661 am 26bc073d: am fe7c2220: Merge "add NA message for any "signature" level permissions" into jb-mr2-dev
* commit '26bc073dfa32c8122ce194cfc39e2dfc44370fcd':
  add NA message for any "signature" level permissions
2013-06-11 14:13:35 -07:00
Scott Main
93e60b5b26 add NA message for any "signature" level permissions
Change-Id: If76e9e3b7ffc5d97422321db312a03869c407f08
2013-06-10 12:03:07 -07:00
Amith Yamasani
5a3915b06b UX compliance for error messages
Bug: 9122154
Change-Id: I4a64750f11845a230321450bc6a2955cb73e3b6d
2013-05-30 10:37:38 -07:00
Jay Shrauner
049219925f am 66d67241: am 34bed420: Merge "Update CALL_PRIVILEGED docs" into jb-mr2-dev
* commit '66d67241205e857e434bacf1a1e8fb8e3100018d':
  Update CALL_PRIVILEGED docs
2013-05-21 11:06:05 -07:00
Jay Shrauner
592c9fc312 Update CALL_PRIVILEGED docs
Add usage restriction note to CALL_PRIVILEGED permission doc.

Bug:8987211
Change-Id: I3545e2ae30464680e533e3eea0ff9ae913e20ef6
2013-05-17 14:36:42 -07:00
Jeff Sharkey
9ecfee03fa Start fleshing out new storage APIs.
Introduces new DocumentsContract which storage backends must
implement.  Backends surface a simple directory-like organizational
structure that enables a document to appear at multiple locations in
that hierarchy.  Querying a document or the contents of a directory
will return a Cursor populated with DocumentColumns, which includes
simple metadata.

Adds new OPEN_DOC and CREATE_DOC Intents, and permission to protect
storage backends.

Change-Id: Ib4984bc980182b2cedbe552908e5be94604ef085
2013-05-01 17:21:06 -07:00
Jim Miller
c0b676dcc2 Add keyguard background scrim and protection around keyguard APIs
With this change, the system process will put up a scrim in the
event keyguard crashes to protect underlying content.

It also adds permission checks to prevent unathorized access
through the binder APIs.

Cleaned up KeyguardTestActivity to build separately.

Removed unused resources.

Change-Id: I9e370c6bfb7dca68eae9eae304c815fb84a753d2
2013-04-26 14:34:21 -07:00
Igor Murashkin
2d0ed28ff6 am 10ce90ad: am eaebe4c1: Merge "Add new android.permission.CAMERA_DISABLE_TRANSMIT_LED" into jb-mr2-dev
* commit '10ce90adfafa25e417fdefa7510e53bc70bccd7b':
  Add new android.permission.CAMERA_DISABLE_TRANSMIT_LED
2013-04-25 17:01:18 -07:00
Igor Murashkin
f640bb9bbb Add new android.permission.CAMERA_DISABLE_TRANSMIT_LED
This system-only permission allows a service to disable the transmit LED
when a camera is in use.

Bug: 8554573
Change-Id: I64f7e3fcdc8ded8be3904650bd0c91d3b8f10dd4
2013-04-24 15:08:12 -07:00
Svetoslav
5c0bd520b8 am ab3f5903: am 688a6977: Replacing accessibility service permissions with capability attributes.
* commit 'ab3f5903fc4cefbaed6c5cf2242703d56f80028e':
  Replacing accessibility service permissions with capability attributes.
2013-04-18 18:05:27 -07:00
Svetoslav
688a6977cf Replacing accessibility service permissions with capability attributes.
Accessibility services can perform special operations such as retrieve
the screen content, enable explore by touch, etc. To ensure the user
is aware that the service will perform special operations we were using
permissions. However, the special operations cannot be performed unless
the service is really enabled by the user and it is at this point that
we want to notify the user about the service capabilities.

This change adds capability attributes to the accessibility service's
meta-data XML file. The service has to declare the capability and when
it is enabled we show the user the capabilities in the warining dialog.

bug:8633951

Change-Id: Id3442dc71dad018e606888afdc40834682fdb037
2013-04-18 17:45:44 -07:00
Dirk Dougherty
6c5a2e72bd am e0495912: am 5a02663d: Merge "Doc change: Eat some permissions group comments." into jb-mr2-dev
* commit 'e0495912246495d784736cad7d5e4fa87ed788d8':
  Doc change: Eat some permissions group comments.
2013-04-18 17:01:19 -07:00
Dirk Dougherty
f6878b009a Doc change: Eat some permissions group comments.
Change-Id: I6db06ed80fbc9e3d71c2a029cc50a6fa954d35b9
2013-04-18 16:55:21 -07:00
Robert Greenwalt
63e7dcf9cf am e3e55f2a: am 5d1a182a: Merge "Secure broadcasts." into jb-mr2-dev
* commit 'e3e55f2a1943a296472d91680a385ea5dc288a31':
  Secure broadcasts.
2013-04-18 11:53:34 -07:00
Robert Greenwalt
5d1a182a8a Merge "Secure broadcasts." into jb-mr2-dev 2013-04-18 18:45:53 +00:00
Robert Greenwalt
68b13ba12f Secure broadcasts.
Prevents 3rd party spoofing.

bug:7622253
Change-Id: I1e1a9887afe009d060205e349c31e3aefba2ea5b
2013-04-18 10:34:13 -07:00
Dianne Hackborn
2590a8b341 am bc463ea1: am e8d12dd6: Merge "Fix issue #8032572: Android app permission help text "null"..." into jb-mr2-dev
* commit 'bc463ea1c5fa9c80fa06183a82fdd1acfb5289e5':
  Fix issue #8032572: Android app permission help text "null"...
2013-04-17 11:30:50 -07:00
Dianne Hackborn
84c7111c4b Fix issue #8032572: Android app permission help text "null"...
...for "Microphone / Record audio"

Change-Id: Ie839b055771950e1078fa66506a007203338cfb5
2013-04-17 11:18:10 -07:00
Amith Yamasani
18a2145972 am 399a2977: am b3a98725: Merge "Show an error dialog when account type is requested on a limited user" into jb-mr2-dev
* commit '399a2977a5067e4ea562ad4d74aaa0f1bffe4c53':
  Show an error dialog when account type is requested on a limited user
2013-04-10 17:36:26 -07:00
Amith Yamasani
b3a9872549 Merge "Show an error dialog when account type is requested on a limited user" into jb-mr2-dev 2013-04-11 00:27:49 +00:00
Jaikumar Ganesh
a934b7c99a am 7228e1ae: am 8ce470dd: GPS Hardware geofencing.
* commit '7228e1aeb9a2af8fad410749e2adc61266b2649a':
  GPS Hardware geofencing.
2013-04-10 15:38:24 -07:00
Amith Yamasani
23c8b96a7e Show an error dialog when account type is requested on a limited user
This covers the scenario where an app doesn't find an account of the
required type and requests the account manager to add one of that
type.

Bug: 8537648
Change-Id: I4d9c8842c2d90aa668f16034d3db007dc61714b8
2013-04-10 15:36:54 -07:00
Jaikumar Ganesh
8ce470dd4b GPS Hardware geofencing.
Add support for doing geofencing in hardware.

Change-Id: I6d5015190e8d84e1f4beb1010ed977a71c1622d0
2013-04-10 15:25:07 -07:00
John Spurlock
8740cb1da6 resolved conflicts for merge of 29211d3a to master
Change-Id: I9691f41b12fbf52d0ef35a9bf5223edef7afdfd2
2013-04-05 16:18:59 -04:00
Daniel Sandler
5feceebb89 New NotificationListenerService.
This is the best and only way for apps to listen for
notifications: create a NotificationListenerService, wait
for the NoMan to bind to you (as a result of the user
checking a box somewhere in Settings and agreeing to a
scary dialog box), and you'll start receiving notification
posted and dismissed callbacks. Your service, while enabled,
will also be able to clear one or all notifications.

Use this power wisely.

This change moves StatusBarNotification out of
com.android.internal into android.service.notification.
[Internal customers, including System UI and early users of
the system-only listener binder API, will need to be
updated.]

Bug: 8199624
Change-Id: I1be46f823d4b3ddc901109ec1e085cd6deb740c2
2013-04-05 19:54:44 +00:00
Ben Gruver
60765b285d am a1607a8c: am 65f420ec: Merge "Add a config updater component for the intent firewall" into jb-mr2-dev
* commit 'a1607a8c62a630150b4e96ec1148e90dc40ab984':
  Add a config updater component for the intent firewall
2013-04-05 09:41:34 -07:00
Ben Gruver
633dc9bcef Add a config updater component for the intent firewall
Change-Id: I43f6defa16691099592bf87e75f2d1a732135cf3
2013-04-04 19:46:22 -07:00
Geremy Condra
77118fb55e Add SELinux updater and Settings-based enforcement switch.
Bug: 8116902
Change-Id: Ifac495026a354dac7655c28ea2188499a2a319aa
2013-03-29 16:52:56 -07:00
Geremy Condra
4e7f7e839e Add SELinux updater and Settings-based enforcement switch.
Bug: 8116902
Change-Id: Ifac495026a354dac7655c28ea2188499a2a319aa
2013-03-29 15:48:15 -07:00
Dianne Hackborn
1a95a42c89 am 177543db: am 3bcc2fba: Merge "Fix issue #8470131: Process thrash kills battery" into jb-mr2-dev
* commit '177543db55f88f060d9a43df79afd6733cd565da':
  Fix issue #8470131: Process thrash kills battery
2013-03-26 17:28:19 -07:00
Dianne Hackborn
a40cfeb55f Fix issue #8470131: Process thrash kills battery
Protect app widget broadcasts from abuse.

In this case the app was sending an APPWIDGET_UPDATE broadcast
without specifying a target, which (a) should not be allowed (you
should not be able to send updates to other apps), and (b) resulted
in every single potential app widget in the system being launched...
which was about 75 of them.

Change-Id: I9d48733610ce6d5a7c32e69a3e06b9f33bd79a34
2013-03-25 17:49:36 -07:00
Dianne Hackborn
c42a44931f am b2bf4ecd: am 71b00177: Merge "Fix issue #8410116: "Disable your screen lock" permission..." into jb-mr2-dev
* commit 'b2bf4ecd4ab7c2182c2a6611ff6dead67e712a80':
  Fix issue #8410116: "Disable your screen lock" permission...
2013-03-21 17:21:07 +00:00
Dianne Hackborn
71b0017759 Merge "Fix issue #8410116: "Disable your screen lock" permission..." into jb-mr2-dev 2013-03-21 17:13:50 +00:00
Dianne Hackborn
3ad2769ba5 Fix issue #8410116: "Disable your screen lock" permission...
...appears under "Storage" section

Change-Id: I55673c559551797aae3a0dd80e90c573a028b4b0
2013-03-18 10:53:09 -07:00
Jeff Sharkey
2044158fe1 am 5d7b4a44: am 34f37e74: Merge "Handle finished bugreports, share from private." into jb-mr2-dev
* commit '5d7b4a4448e0f29f36ba27aee2de06ce25ff2ee1':
  Handle finished bugreports, share from private.
2013-03-14 15:48:28 +00:00
Jeff Sharkey
02ffba940c Handle finished bugreports, share from private.
Show notification when a bugreport is finished, letting the user
launch a SEND_MULTIPLE intent to share them.  Add dialog that warns
user about contents before sharing.  Since bugreports are now stored
in private app data of the Shell app, use FileProvider to build Uris
that we can grant others access to.

Define BUGREPORT_FINISHED as being a protected broadcast.  Delete
older bugreports automatically to reclaim disk space.  Migrate any
Intent extras to ClipData when building PendingIntents.

Add --receiver-permission support to am shell command.

Bug: 7005318
Change-Id: If6c607dbcf137362d5887eac482ff7391563890f
2013-03-13 16:42:38 -07:00
Jim Miller
5ecd81154f Move keyguard to its own process.
This is in preparation to moving keyguard into its own process.

Moved keyguard source and resources into new .apk.

Got basic test app working.  Still need to implement MockPatternUtils
and means to pass it into KeyguardService with local binder interface.

Added new ACCESS_KEYGUARD_SECURE_STORAGE permission.

Temporarily disabled USER_PRESENT broadcast.

Remove unintentional whitespace changes in PhoneWindowManager, etc.

Checkpoint basic working version.

Move to systemui process.

Synchronize with TOT.

Sync with recent user API changes.

Fix bug with returing interface instead of stub for IKeyguardResult.  Create KeyguardServiceDelegate to allow
for runtime-selectable local or remote interface.

More keyguard crash robustness.

Keyguard crash recovery working.  Currently fails safe (locked).

Fix selector view which was still using frameworks resources.

Remove more references to internal framework variables.  Use aliases for those we should move but
currently have dependencies.

Allow runtime switching between service and local mode.

Fix layout issue on tablets where orientation was reading the incorrect constant
from the framework.  Remove more framework dependencies.

Fix PIN keyboard input.

Remove unnecessary copy of orientation attrs.

Remove unused user selector widget and attempt to get multi user working again.

Fix multi-user avatar icon by grabbing it from UserManager rather than directly since
keyguard can no longer read it.

Merge with AppWidget userId changes in master.

Change-Id: I254d6fc6423ae40f6d7fef50aead4caa701e5ad2
2013-02-27 17:27:53 -08:00
Svetoslav
aa7cc1e2ab Merge "Adding idle maintenance service." 2013-02-20 19:11:07 +00:00
Svetoslav
b3038ec7cf Adding idle maintenance service.
It is beneficial that there is a mechanism on the platform
to notify applications whether it is safe to perform somehow
expensive operations while the user is not using the device.
Thus, user experience will not be degraded. An example is
discarding of unused blocks on a mounted file system instead
of doing this on every write operation.

bug:8056794

Change-Id: I708bad9d3ce6c8f1d5a1c05c0abf46f81a3d464b
2013-02-15 11:04:11 -08:00
Russell Brenner
108da0cfa4 Adjust captive portal test for setup wizard
During setup wizard, perform captive portal test without the typical
delays.

Change-Id: If596948e732966817aae6201440e87e19be0c2f8
2013-02-14 11:02:10 -08:00
Daniel Sandler
fde19b106b New API to request a list of current notifications.
The ACCESS_NOTIFICATIONS permission is signature|system only.

Change-Id: I41338230aee9611117cbdac251c1b6b6c3cebf00
2013-02-07 15:43:02 -05:00
Santos Cordon
3b53da4934 Merge "Sort out permission around "instant text response"" 2013-02-04 17:58:13 +00:00
Geremy Condra
d4b1d9cf9c Merge changes I4859c8db,I7643024d
* changes:
  Add the TZInfo updater and relevant intent.
  Fix ConfigUpdater for binary files.
2013-01-31 19:24:42 +00:00
Svetoslav
ec695824af Merge "Remove "enhance web scripts" from settings and make it requested by plug-ins." 2013-01-31 03:16:59 +00:00
Geremy Condra
78a4c718e3 Add the TZInfo updater and relevant intent.
Also add a hook for ConfigUpdateInstallReciever subclasses to
change the delivery of data- in this case, from raw text to
b64 encoded binary.

Change-Id: I4859c8db1cc97c2427310a108b2fef03975df2b4
2013-01-30 17:11:44 -08:00
Doug Zongker
58395e71ce am 9c4ba4fe: am b616f0c2: add android.permission.LOOP_RADIO for access to loop radio device
# Via Android Git Automerger (1) and Doug Zongker (1)
* commit '9c4ba4fe752b131b01aa402389c96eb8f24764b8':
  add android.permission.LOOP_RADIO for access to loop radio device
2013-01-29 17:09:03 -08:00
Svetoslav
3822896e22 Remove "enhance web scripts" from settings and make it requested by plug-ins.
Currently we have an "enhance web accessibility" setting that has to be
enabled to make sure web content is accessible. We added the setting to
get user consent because we are injecting JavaScript-based screen-reader
pulled from the Google infrastructure. However, many users do not know
that and (as expected) do not read the user documentation, resulting in
critique for lacking accessibility support in WebViews with JavaScript
enabled (Browser, Gmail, etc).

To smoothen the user experience now "enhance web accessibility" is a
feature an accessibility plug-in can request, similarly to explore by
touch. Now a user does not need to know that she has to explicitly
enable the setting and web accessibility will work out-of-the-box.

Before we were showing a dialog when a plug-in tries to put the device
in a touch exploration mode. However, now that we have one more feature
a plug-in can request, showing two dialogs (assume a plug-in wants both
features) will mean that a user should potentially deal with three
dialogs, one for enabling the service, and one for each feature. We
could merge the dialogs but still the user has to poke two dialogs.

It seems that the permission mechanism is a perfect fit for getting
user permission for an app to do something, in this case to enable
an accessibility feature. We need a separate permission for explore
by touch and enhance web accessibility since the former changes the
interaction model and the latter injects JavaScript in web pages. It
is critical to get user consent for the script injection part so we
need a well-documented permission rather a vague umbrella permission
for poking accessibility features. To allow better grouping of the
accessibility permissions this patch adds a permission group as well.

bug:8089372

Change-Id: Ic125514c34f191aea0416a469e4b3481ab3200b9
2013-01-29 13:56:22 -08:00
Doug Zongker
b616f0c239 add android.permission.LOOP_RADIO for access to loop radio device
Change-Id: I811d70fa67aa758122678809f32b8aade42ced0f
2013-01-29 10:39:13 -08:00