Commit Graph

5706 Commits

Author SHA1 Message Date
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
Jeff Sharkey
620b32b316 Package and storage movement callbacks.
Since package and primary storage movement can take quite awhile,
we want to have SystemUI surface progress and allow the Settings
app to be torn down while the movement proceeds in the background.

Movement requests now return a unique ID that identifies an ongoing
operation, and interested parties can observe ongoing progress and
final status.  Internally, progress and status are overloaded so
the values 0-100 are progress, and any values outside that range
are terminal status.

Add explicit constants for special-cased volume UUIDs, and change
the APIs to accept VolumeInfo to reduce confusion.  Internally the
UUID value "null" means internal storage, and "primary_physical"
means the current primary physical volume.  These values are used
for both package and primary storage movement destinations.

Persist the current primary storage location in MountService
metadata, since it can be moved over time.

Surface disk scanned events with separate volume count so we can
determine when it's partitioned successfully.  Also send broadcast
to support TvSettings launching into adoption flow.

Bug: 19993667
Change-Id: Ic8a4034033c3cb3262023dba4a642efc6795af10
2015-04-23 20:32:17 -07:00
Jose Lima
4112056201 Add pre-order as a pricing type for ContentInfoExtender
Change-Id: Ibf9e4f57b47e92789d3e0730c58b0bce14663fec
2015-04-23 16:25:10 -07:00
Ed Heyl
a1ab2d37a0 Merge "Quick build fix: Revert "Add pre-order as a pricing type for ContentInfoExtender"" 2015-04-23 20:51:16 +00:00
Ed Heyl
cc5daf1be5 Quick build fix: Revert "Add pre-order as a pricing type for ContentInfoExtender"
This reverts commit 7e0f2ac425.

Change-Id: I52285a668ccfce547a398e1d6b40594dc99745f0
2015-04-23 20:50:44 +00:00
Jose Lima
b3614b7285 Merge "Add pre-order as a pricing type for ContentInfoExtender" 2015-04-23 19:54:59 +00:00
Craig Mautner
015c5e57b5 Disallow data clearing of DeviceOwner.
There are OEM provided apps that are able to clear the data of the
device owner. That creates a security hole that this fixes.

Fixes bug 20107015.

Change-Id: I4ef313b394bd8059d19d20aa6533396305d1357d
2015-04-23 11:05:02 -07:00
Dianne Hackborn
871af48390 Merge "Add "assist block" API." 2015-04-23 16:26:27 +00:00
Rubin Xu
1964ea500b Merge "Enable system service to notify device owners about pending update" 2015-04-23 09:05:07 +00:00
Dianne Hackborn
799d8d0a0f Add "assist block" API.
To prevent assist structure traversal down the view hierarchy.

Change-Id: I50ce5f8de6f2eca3cb862de8eacd6422c40a2f7c
2015-04-22 17:36:48 -07: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
Jose Lima
7e0f2ac425 Add pre-order as a pricing type for ContentInfoExtender
Change-Id: I137d038c82342869dd104b178f1b11ba02fed07c
2015-04-22 13:08:45 -07:00
Adam Skory
26d68e50fa Merge "nullcheck Activity.getIntent() for AssistContent" 2015-04-22 17:59:34 +00:00
Dianne Hackborn
f45e16f2da Merge "Work on issue #20401752: device idle and alarms." 2015-04-22 17:49:39 +00:00
Adam Skory
4aaed145f8 nullcheck Activity.getIntent() for AssistContent
Nothing stopping an Activity from giving us a
null Intent, and the Intent copy constructor
requires a non-null arg.

Bug: 20419159
Change-Id: I8b12a127431869394697e947e2298d4dbbe08604
2015-04-22 11:29:31 -06:00
Craig Mautner
81786701b6 Merge "Add API for putting up locktask pinning toast." 2015-04-22 14:11:08 +00:00
Dianne Hackborn
f70faed503 Work on issue #20401752: device idle and alarms.
Main change is to fix problems in the alarm manager where it
was not doing a good job at scheduling the device idle wakeup
before an alarm.  To fix this, we now keep explicit track of
the next "wake from idle" alarm so we can consistently use that
to adjust the time of the device idle alarm if needed.

Also a bunch of debugging stuff to help further diagnose this
problem:

- Alarm summary now includes the last time the alarm went off.
- Improved dumpsys output of alarms.
- New event log tags for changes related to idle state.

Change-Id: Idd2c8d24ae23379f7c75815ddbc6835c2a04656c
2015-04-21 16:59:12 -07:00
Christopher Tate
f7cb8a0b50 Compress the preferred-app backup payloads
They can be Very Very Large, so take advantage of the new BlobBackupHelper
infrastructure to keep them tiny!

Also fix an issue in which the restore path wasn't properly passing
notification payloads along for processing, and an issue in which the
blob helper wasn't handling empty states properly.

Change-Id: I11a7ca3cd2e26f634a8971e874ac97385b0b500c
2015-04-21 14:36:22 -07:00
Jeff Brown
a93311f917 Merge "Make activity manager sleep top activity when dreaming." 2015-04-21 20:38:14 +00:00
Dan Sandler
994349c61e Rediscover your own notifications.
This new API, NotificationManager.getActiveNotifications(),
allows an app to recover the set of notifications it has
posted that are still active (un-cleared, un-canceled,
visible by the user). Along with the Notification object
you'll get the original tag and id you used to post it,
wrapped up in the somewhat awkwardly-named
StatusBarNotification data structure (previously only used
internally by NoMan/SysUI and NotificationListenerServices).

Bug: 17320461
Change-Id: I8cd610956fafed4e31526b663cebdc31231ad930
2015-04-21 17:14:17 +00:00
Craig Mautner
c21ae9ed22 Add API for putting up locktask pinning toast.
Fixes bug 18993662.

Change-Id: Ic1753285044857f8ea897784485fd1a9580acf25
2015-04-21 10:11:12 -07: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
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
Christopher Tate
f9767d680d Infrastructure for notification backup/restore
Introduce a fairly general "store byte[] blobs as backup keys" helper, and
use that to integrate with the Notification Manager.  The helper provides all
the machinery of managing prior state, compressing the blob on the wire, etc.

Bug 19848954
Bug 20105530
Bug 17755700

Change-Id: I4aa808172244af6db0ab2f4440cc266a797655d7
2015-04-20 14:08:25 -07:00
Sander Alewijnse
e94787a027 Merge "Add certificate checksum extras." 2015-04-20 10:31:28 +00:00
Svet Ganov
5a71f4fbaf Merge "Add OP_ADD_VOICEMAIL app op - framework" 2015-04-19 20:05:08 +00:00
Svet Ganov
c3300090f5 Add OP_ADD_VOICEMAIL app op - framework
Change-Id: Id21063b93958c9e372dcbaac8ff9f4fa8b5f0cb3
2015-04-19 13:00:32 -07:00
Jeff Sharkey
529f91fc8e Always send volume UUID with installd commands.
Since packages can be moved to other volumes, all relevant commands
to installd now require an explicit volume UUID parameter.

Bug: 20275577
Change-Id: Ie84f5bc43c7aada5800b8d71692c7928b42b965e
2015-04-18 21:11:58 -07:00
Clara Bayarri
641207d180 Merge "Enable Text Selection Action Mode for seach boxes and action bar components." 2015-04-18 07:11:24 +00:00
Jeff Brown
061ea99546 Make activity manager sleep top activity when dreaming.
Added the concept of a sleep token to represent a demand to sleep.
We grab this token whenever a dream window is visible.

This change also deletes a special condition in shouldSleepLocked()
which would tend to keep activities running when the lock screen
was shown unless they had previously been sleeping.  I believe this
condition is no longer necessary and the policy is much simpler
without it.  Let's see if anything breaks.

NOTE: This can currently only be used within the system server process
but it might make sense to move it to IActivityManager (guarded by
DEVICE_POWER permission) so that keyguard can use it.  If we added
a callback on release to inform the client that the underlying activity
has finished drawing then we could untangle a bunch of keyguard
specific logic.

Bug: 18866521
Change-Id: I84b2118f5b990a71a1647d1cee536ad3d99f3a24
2015-04-17 20:00:09 -07: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
Svet Ganov
d3c1ddb892 Merge "Add OP_READ_PHONE_STATE app op - framework" 2015-04-17 21:34:04 +00:00
Svet Ganov
16a1689950 Add OP_READ_PHONE_STATE app op - framework
The READ_PHONE_STATE permission protects PII information and
is in the Phone group. This change is adding the corrseponding
app op for gating access to the API guarded by READ_POHNE state
which will be used instead as an access control for legacy apps.

Change-Id: I2ff895a5a0e529f26ec0ad706266a30d829268ba
2015-04-17 20:43:56 +00:00
Wale Ogunwale
0bd2aa7603 Fail early when starting a background user activity.
If it shouldn't be displayed for all users.

Bug: 13507605
Change-Id: I8fe8e5a98759c1ca058cc7d222817f6d580ffa11
2015-04-17 08:37:56 -07:00
Adrian Roos
94e15a59b7 Allow dismissing Keyguard from TrustAgentService
Bug: 19900313
Change-Id: I44d13ee6fe65070327076e73a3ed96c94acdc108
2015-04-17 01:12:30 +00:00
Wale Ogunwale
2c1d9652fa Merge "Return more information when getAppTasks#getTaskInfo is called." 2015-04-16 22:36:54 +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
Wale Ogunwale
6035e0198b Return more information when getAppTasks#getTaskInfo is called.
The RecentTaskInfo object returned when getAppTasks#getTaskInfo
is called now contains baseActivity, topActivity, and numActivities.

Bug: 18723935
Change-Id: Ifc0cd68a57ed2c0823c23ac8d27e3b6ea6bc95e2
2015-04-16 11:14:46 -07:00
Jeff Sharkey
bd3af28fdc Merge "Candidate volumes for packages, fix symlink." 2015-04-16 05:50:16 +00:00
Jeff Sharkey
e2d45be4da Candidate volumes for packages, fix symlink.
Add API to determine the possible candidate volumes that a package
can be moved to.  For example, it currently knows that we need to
move ASEC-based apps through internal storage before migrating them
to a private volume.

Comparator for consistent VolumeInfo ordering when displayed in UI.

Fix native library symlink to be volume UUID aware.

Bug: 19993667
Change-Id: I68d5fac5f0f776ac1c7dd15e7a984bfe2704f3f7
2015-04-15 22:21:49 -07:00
John Spurlock
a419dd1616 Merge "Zen: Add notification policy management api." 2015-04-16 01:19:27 +00:00
Craig Mautner
41014801d1 Merge "Introduce android:lockTaskMode" 2015-04-15 22:45:46 +00:00
Christopher Tate
95729c1398 Merge "Remember to skip the no-backup dir during recursions" 2015-04-15 21:36:36 +00:00
Christopher Tate
e32da05d94 Remember to skip the no-backup dir during recursions
Change-Id: I34c46f9b23cd0ddfa2392e953d8d8cc03bcea5a8
2015-04-15 14:32:34 -07:00
Craig Mautner
15df08abd8 Introduce android:lockTaskMode
The ability for tasks to be started in locktask mode or pinned is
dependent on the value of android:lockTaskMode for the root activity
of the task.

For bug 19995702

Change-Id: I514a144a3a0ff7dbdd4987da5361b94bdfe9a437
2015-04-15 14:27:56 -07:00
Paul McLean
55787399c9 Merge "Audio Devices Enumeration/Notification API" 2015-04-15 21:08:27 +00:00
John Spurlock
1fc476d512 Zen: Add notification policy management api.
- Allow apps to read and modify notification policy (currently
   which items are prioritized in "priority only" mode), but only
   after they've been granted access by noman.
 - Access to read/modify notification policy requires a token provided
   by noman.  Enabled notification listeners are automatically given
   tokens (new getter on NLS), but any other app can also request them.
 - Currently, all requests are granted.
 - Also add a new change intent when the public policy changes.

Bug: 18541928
Change-Id: I482d1c39852d0d961931515e0f0e059a8faee4ed
2015-04-15 16:58:30 -04:00
Benjamin Franz
47af53ed95 Merge "Introduce device owner API to disable the status bar" 2015-04-15 17:22:40 +00:00
Paul McLean
a33be211e7 Audio Devices Enumeration/Notification API
Change-Id: I4eecfa43e4fecfe309ddd805ed193d078b10d5e6
2015-04-15 10:56:49 -06:00