816 Commits

Author SHA1 Message Date
Mike Lockwood
383ce580b1 Merge "MidiManager: proxy all requests to open devices through MidiService" into mnc-dev 2015-06-08 19:37:36 +00:00
John Spurlock
20ac61b8c0 Merge "Zen: New user flow for requesting DND access." into mnc-dev 2015-06-08 16:39:36 +00:00
John Spurlock
7c74f78a85 Zen: New user flow for requesting DND access.
- User flow is now similar to requesting access to notification
   content, namely prompting the user to visit a settings page
   for enabling/disabling apps access.
 - New ACTION_NOTIFICATION_POLICY_ACCESS_GRANTED_CHANGED intent
   for apps to listen to this state change.
 - Removed obsolete request method and associated internal callback
   aidl.
 - Added new android.permission.ACCESS_NOTIFICATION_POLICY permission
   for apps to include as a signal that they want to request this access
   (and therefore appear in the list on the settings page).
 - Improve javadocs, outline the user flow in NotificationManager#isNotificationPolicyAccessGranted
   and link to this method elsewhere.
 - NoManService now persists the user-enabled package list across reboots
   and does so per-user.
 - Rename public settings intent to correspond with the noman api.

Bug: 21621663
Change-Id: I72cbc21cd736e6a157b6be5d1d0ba0b4a8e7ef4e
2015-06-08 11:53:35 -04:00
Martijn Coenen
a2344eac37 Remove NFC CardEmulation dynamic resource APIs.
No longer needed.

Bug: 21343778
Change-Id: I5188c4bc819146861d346f3f4339f002b7173027
2015-06-05 10:45:50 +02:00
Mike Lockwood
e0a6ca64fa MidiManager: proxy all requests to open devices through MidiService
Previously when a MidiManager client opened a virtual or Bluetooth device,
the client bound directly to the virtual device's MidiDeviceService
or BluetoothMidiDevice's IMidiDeviceServer for the given BluetoothDevice.
Only USB devices were opened in MidiService.

Now opening any type of MIDI device is done via IMidiManager.openDevice() or
IMidiManager.openBluetoothDevice().  MidiService tracks all connnections between
clients and devices.

Services that implement virtual devices must now require android.permission.BIND_MIDI_DEVICE_SERVICE
so only MidiService can bind to these services.

Bug: 21044677

Change-Id: I7172f7b1e0cbfe4a2a87dff376c32dc9b41aa563
2015-06-04 19:16:23 -07:00
Amith Yamasani
ff3b76d046 Merge "Temporarily whitelist an app for network during doze" into mnc-dev 2015-06-02 20:34:59 +00:00
Amith Yamasani
af575b9f8e Temporarily whitelist an app for network during doze
API to allow an app to be whitelisted for network and wakelock
access for a short period. So even if the device is in idle
mode, such apps can be given a chance to download the payload
related to a high priority cloud-to-device message.

This API is meant for system apps only.

A new permission CHANGE_DEVICE_IDLE_TEMP_WHITELIST is required
to make this call.

Bug: 21525864
Change-Id: Id7a761a664f21af5d7ff55aa56e8df98d15511ca
2015-06-02 11:05:03 -07:00
Svetoslav
5f79d8282d Add accidentally deleted strings.
Change-Id: I16d7c151b46c076bfdccb1ff0b2bcb0934eedf93
2015-06-01 16:51:11 -07:00
Brian Attwell
8d38a8d84f Merge "Deprecate {READ,WRITE}_PROFILE permission" into mnc-dev 2015-05-28 17:36:36 +00:00
Svet Ganov
63428ccde7 Merge "Add a normal permission guarding the installer UI - used for stats tracking" into mnc-dev 2015-05-28 15:37:06 +00:00
Svet Ganov
86877e44f0 Add a normal permission guarding the installer UI - used for stats tracking
bug:2147009

Change-Id: Id020eaf7b852de43966f4ab8231e3f7046e66542
2015-05-28 08:33:45 -07:00
Brian Attwell
b97df269b5 Deprecate {READ,WRITE}_PROFILE permission
Now that *_PROFILE permissions are in the same permission
group as *_CONTACTS, these permissions have no visible
impact on the user. However, they complicate developer's
lives and prevent us from using Context#grantUriRequest().

Bug: 21090207
Change-Id: I31e6ae7b0f49c3589071f6a95f8d69a9456c144d
2015-05-27 19:36:02 -07:00
Svetoslav
59ffbc46f3 Allow priv apps to get local mac address
Change-Id: I550847cedd5a407c9424778e483b525d4b97e46d
2015-05-27 14:39:21 -07:00
Jorim Jaggi
d6bd9da8ef Lower fingerprint permission protection level
Bug: 21307136
Change-Id: Iafdb42c6a82b27a5297ad14ffaa289b14fffad23
2015-05-20 19:36:13 +00:00
Svet Ganov
408abf7f1b Do not report WiFi and Bluetooth MAC addresses - framework.
As a part of the new runtime permissions work we are limiting
the PII apps can access. BT and WiFi MAC addresses are PII and
based on our research there is no valid use case for app dev
to get these addresses aside of user tracking which we are
trying to limit.

bug:21078858

Change-Id: Ib48223b272c0fd4f5c36acc889d4f44df204b309
2015-05-18 15:14:24 -07:00
Svet Ganov
321f01574e Hide platform platform legacy permissions behind a menu option - framework.
bug:21195624

Change-Id: I563c448e2abd7d33070ed2d8f62ba1b60a3744e8
2015-05-16 22:52:33 -07:00
Zach Johnson
cdaaa91f7c Create unified BIND_CARRIER_SERVICES permission
Replace BIND_CARRIER_MESSAGING_SERVICE and
BIND_CARRIER_CONFIG_SERVICE since we don't really
need one permission for each carrier service type.

Deprecate BIND_CARRIER_MESSAGING_SERVICE since it
already shipped, but remove BIND_CARRIER_CONFIG_SERVICE
since it hasn't.

b/21165906

Change-Id: I716f3f1c98a228afcfee84cf4a48911f0736ce8c
2015-05-14 15:10:39 -07:00
Jaesung Chung
f5edb20ae9 Merge "TIF: Add DVB device handling to TvInputManagerService" into mnc-dev 2015-05-14 02:14:37 +00:00
Yorke Lee
ad0bfe3ae2 Merge "Add BIND_TELECOM_CONNECTION_SERVICE permission" into mnc-dev 2015-05-14 02:06:54 +00:00
Jaesung Chung
58739e7584 TIF: Add DVB device handling to TvInputManagerService
Added an API to pass an open file descriptor of DVB devices and
addressed the security issue of setting the permissions on DVB devices
to 0666.

Bug: 20436120
Change-Id: I4649e76084f3356ec22b7e776fb87c6a8fdc00d6
2015-05-14 02:00:06 +00:00
Yorke Lee
249c12e7b8 Add BIND_TELECOM_CONNECTION_SERVICE permission
Bug: 21088342
Change-Id: I465307899d83c4a3ee5e88a28554c4b867c1f4ba
2015-05-13 16:12:44 -07:00
Svet Ganov
f7e9cf4fb4 Access mock location is no longer a runtime permission - framework
The access mock location is no longer a runtime permission. It is a
signature protected one that apps cannot get but the fact they request
it means they want to inject location into the system. Now the user
gets to choose the current mock location app in developer options from
the apps that request the mock location permission. The access to mock
location is no longer guarded by the permisson but from a new app op
which is off by default and the settiings UI sets it to enabled only
for the currently selected mock location app.

bug:21078873

Change-Id: I19e3f9dc7c7de82eab46b30fec1abfbca54a0e59
2015-05-13 15:37:21 -07:00
Svet Ganov
b467330b14 Lower protection level of permissions of permissions
Permissions ACCESS_NETWORK_STATE, INTERNET, NFC, DISABLE_KEYGUARD
do not lead to unrecoverable damage and do not lead to PII leaks,
hence they do not meet the bar to be runtime permissions and we
are lowering their protection level.

bug:21078873

Change-Id: I30c8e742d6a69474171994b65ce070068402ae47
2015-05-12 20:50:17 -07:00
Zoltan Szatmary-Ban
11a1086f69 Merge "Improve javadoc on android.permission.PACKAGE_USAGE_STATS" into mnc-dev 2015-05-11 16:24:52 +00:00
Zoltan Szatmary-Ban
763e170f58 Improve javadoc on android.permission.PACKAGE_USAGE_STATS
Bug: 20642656
Change-Id: Ib0cedee487950dab16134edd383ce5bd5374ff65
2015-05-11 16:01:33 +00:00
Fyodor Kupolov
4f434a0470 Merge "Remove restrictions PIN functionality" into mnc-dev 2015-05-08 23:10:31 +00:00
Jeff Brown
c05c1aeedf Revert "Initial draft of new MediaRouter APIs."
This reverts commit 1a937b04e63539cb1fab1bde601031d415c7156f.

Bug: 20641986
Change-Id: I035d945d1561e5fc7c914aa9362635f763c83cfd
2015-05-06 16:02:21 -07:00
Fyodor Kupolov
ef24909d84 Remove restrictions PIN functionality
Bug: 20852231
Change-Id: I5666ee28ff1341ead9b258bc0852d8ba6d313c5e
2015-05-06 13:36:03 -07:00
Alan Viverette
b9da280ac2 DayNight theme for framework packages
Change-Id: I745f90561c957c83540e75a2886e294633c83be1
2015-05-05 14:09:21 -07:00
Svet Ganov
019d230499 Permission UI - legacy apps support
Change-Id: Id3f98c138422d33868363d587dd196898b42a0d4
2015-05-05 08:33:04 -07:00
Dianne Hackborn
0b4daca9ba Implement user-settable power save whitelist.
The whitelist is now maintained by DeviceIdleController,
which is moving out into its own independent system service.
Network stats now queries it for the whitelist, instead of
collecting that itself.

Also did a few improvements in alarm manager -- made the
code for moving alarms out of the pending list more robust,
and fixed the debug output to always print the contents of
the pending list even if we aren't in a pending state.  (That
would have helped me identify the problem much earlier.)

Change-Id: I0f7119d4c553c3af4d77b2f71246fa6e2c13c561
2015-04-29 12:38:09 -07:00
Yorke Lee
e9d766a312 Make BIND_INCALL_SERVICE and BIND_CONNECTION_SERVICE public
These system|signature only permissions must be required by
an InCallService and ConnectionService respectively.

Bug: 20304458
Change-Id: I26156afb610a7f549c0a1a7c01c2096928ef33a7
2015-04-28 16:13:14 -07:00
Etan Cohen
cd895cdf4d Merge changes from topic 'mwd-merge-042415'
* changes:
  Rename removeVideoCallListener to unregisterCallback
  Bluetooth document fix: remove reference from open API to hidden entities
  Fix build due to merge of 7595842 and renaming due to 8eb87f0
  Merge commit '052a0da' into merge2
  Merge commit 'db1dbb8' into merge2
  Merge commit '7e5e791' into merge2
  Merge commit '170102d' into merge2
  Merge commit '4cb5d80' into merge2
  Merge commit '83cda00' into merge2
  Merge commit 'c91bc62' into merge2
  Merge commit 'cffc360' into merge2
  Merge commit '7f61051' into merge2
  Merge commit '167c3a7' into merge2
  Merge commit '4467b98' into merge2
  Merge commit '25a217c' into merge2
  Merge commit '04b18ec' into merge2
  Merge commit '7595842' into merge2
  Merge commit '2bbd2b6' into merge2
  Merge commit '4890351' into merge2
  Merge commit 'cd405fe' into merge2
  Merge commit '6ddbb5e' into merge2
  Merge commit 'de93575' into merge2
  Merge commit '9561e74' into merge2
2015-04-25 00:51:47 +00:00
Etan Cohen
a179962b61 Merge commit '25a217c' into merge2
Change-Id: I116a9dbf19e95651a7c50393e4dcd7fb59ca3f3f
2015-04-24 13:58:45 -07:00
Amith Yamasani
4bc704655a Merge "Add ability to get and set idle state of apps" 2015-04-24 20:03:02 +00:00
Amith Yamasani
cf76872a62 Add ability to get and set idle state of apps
Add am shell command to set and get idle
Add public API to check if an app is idle

Bug: 20534955
Bug: 20493806
Change-Id: Ib48b3fe847c71f05ef3905563f6e903cf060c498
2015-04-24 12:58:46 -07:00
Nicolas Prevot
2806374f95 Restrict setting the profile/device owner with a signature-level permission.
Create the new permission MANAGE_PROFILE_OWNERS to restrict setting
the profile/device owner.

BUG:19838376

Change-Id: Ib55a2db85fcb6f34e3b88c398683bddb0ad66868
2015-04-24 11:36:52 +01:00
Rubin Xu
dc105cc91c Enable system service to notify device owners about pending update
Create a DevicePolicyManager API which can be used by OTA subsystem
to tell device owners about pending updates. Device owners will get
a callback from its DeviceAdminReceiver when the update service sends
out such notifications.

Bug: 20213644
Change-Id: Ifcc755655e4f441980cf77d76175a046112ca9ae
2015-04-22 22:11:04 +01:00
Martijn Coenen
8abf680e00 Add NFC APIs for dynamic resources.
For new Tap & Pay settings UX.

Change-Id: I55ff4e4d4a4b6d26c3c88d96431c4f14d0963323
2015-04-22 11:56:36 +02:00
Andrei Kapishnikov
4eb6a36922 Introduced DO_NOT_ASK_CREDENTIALS_ON_BOOT flag
A new flag for DPM.resetPassword() method that specifies that the
device should be decrypted without asking for the password or pattern.

Bug 19250601

Related CL in Settings App: https://googleplex-android-review.git.corp.google.com/#/c/670206

Change-Id: I9ca3472dc18e66e618ff772dee16ca4a450e9997
2015-04-21 11:07:09 -04:00
Erik Kline
17e11fad0a Final removal of CONNECTIVITY_ACTION_IMMEDIATE.
Since the demise of the connectivity change delay,
CONNECTIVITY_ACTION_IMMEDIATE has been sent out back to back with
CONNECTIVITY_ACTION.

Interested parties should watch for CONNECTIVITY_ACTION.

Bug: 20013379
Change-Id: I072dddf95adb3bbd17fa1f7159d4ea848ade8f19
2015-04-21 17:02:34 +09:00
Rubin Xu
97e2f7d5af Merge "Rename public OTA policy APIs in DevicePolicyManager" 2015-04-20 23:56:27 +00:00
Rubin Xu
5faad8e4cd Rename public OTA policy APIs in DevicePolicyManager
Use the term "SystemUpdate" instead of "OTA", in public
DevicePolicyManager APIs that handle OTA policies.

Bug: 19650524
Change-Id: Iebdaea91337d617147cb411b6f47e0f3fae8671c
2015-04-20 23:27:14 +01:00
Svetoslav
6c589570c4 Remove unnecessary WRITE_SMS permission - framework
Currently only one app can write to the SMS provider and it has to
be set as the default SMS app by the user in the UI. The default
SMS app is set by enabling the write SMS app op for it and keeping
this op off for other SMS apps. Hence, this permission does not
guard anything and can be taken out. The API change is fine as if
an app refers to the permission in the manifest as string it will
be ignored and if it was referred in Java the value is statically
compiled in the source.

Change-Id: I1128c3b034e6c7dda4baa051500ac1ef46a53575
2015-04-18 00:18:53 +00:00
Svetoslav
8fcd5fee60 Merge "Lower protection level of access mock location permission" 2015-04-16 20:19:46 +00:00
Jonathan Basseri
9a1c9b67c4 Adding Carrier Config API.
UICC privileged carrier apps will extend CarrierConfigService to provide
carrier-specific configuration. Apps/services will use
CarrierConfigManager to read the current configuration.

CarrierConfigManager also defines the set of configuration variables and
their default values.

Bug: b/19483786
Change-Id: I027211b43276afd6fe893ae50048c52f2aed5cf5
2015-04-16 11:40:33 -07:00
Paul Jensen
25a217c0fb Add captive portal API.
This API allows apps other than the system's CaptivePortalLogin
to handle signing in to captive portals.

bug:19416463
Change-Id: I27fce5856b635233e6ff66396d50ccabedd76cf5
2015-04-16 16:53:10 +00:00
Jonathan Basseri
3031bf9611 Adding Carrier Config API.
UICC privileged carrier apps will extend CarrierConfigService to provide
carrier-specific configuration. Apps/services will use
CarrierConfigManager to read the current configuration.

CarrierConfigManager also defines the set of configuration variables and
their default values.

Bug: b/19483786
Change-Id: I027211b43276afd6fe893ae50048c52f2aed5cf5
2015-04-15 16:06:51 -07:00
Ben Gruver
df0db7fe83 Merge "Don't verify signatures in ConfigUpdateInstallReceiver" 2015-04-14 23:56:34 +00:00
Svetoslav
7f24225e5e Lower protection level of access mock location permission
The ACCESS_MOCK_LOCATION permission is gated by a secure setting
toggled in developer options by the user. Hence, there is no need
for getting yet another consent from the user for accessing it.

Change-Id: Ica1a72f587a712d7da7c00cfc4a8ca228064286e
2015-04-14 14:44:15 -07:00