Commit Graph

7221 Commits

Author SHA1 Message Date
Sergey Poromov
899edf6f4f Fix NPE when null BackupObserver is passed into BackupManager#requestBackup()
BackupManagerService has the null check, but it doesn't work
because passed BackupObserver object is wrapped into
this BackupObserverWrapper.
This was found during GTS testing.

Bug: 27334738
Change-Id: I16dc0230824b326d3fae1f8489f58b0c0d4e1c7c
2016-02-24 19:36:26 +01:00
Tao Bao
9de7952aa9 Merge "Add support for update-on-boot feature." into nyc-dev 2016-02-22 19:24:25 +00:00
Dimitry Ivanov
05ba2b724c Merge "Construct classloader for apps with no java code" into nyc-dev 2016-02-22 18:24:14 +00:00
Esteban Talavera
d34718b6b9 Merge "Updated removeActiveAdmin documentation" into nyc-dev 2016-02-22 13:25:15 +00:00
Calin Juravle
30eb5b30e7 Merge "Change the location of profile files." into nyc-dev 2016-02-22 11:42:02 +00:00
Polina Bondarenko
280c5b2155 Merge "Added hardwareproperties SystemService" into nyc-dev 2016-02-22 09:27:21 +00:00
Svet Ganov
9cea80cddd No overlay when permissions shown - framework
bug:26973205

Change-Id: I88395e47649191bb7db6dd8723c49e741ef4f1e4
2016-02-20 17:41:47 +00:00
Dianne Hackborn
b2117d15d1 Implement lenient background check option.
Which really means, make background check much more
strict, with an option to revert to the more lenient
behavior.

In this strict version, an app can't have services
started or receive broadcasts at any point when it is
not foreground.  Also, it doesn't matter the importance
of a caller trying to start a service, it only depends
on the state of the app whose service is being started.

A new activity shell command allows you to control
whether to use the strict or lenient behavior.

Change-Id: I7f5a50b52881b5c8f9d8b6c8c622d3652a769fd7
2016-02-19 16:51:25 -08:00
Vadim Tryshev
a6a127747a Merge "Add Wallpaper.getBitmapAsUser()" into nyc-dev 2016-02-20 00:11:41 +00:00
Selim Cinek
c68190ae90 Merge "Add support for custom media notifications" into nyc-dev 2016-02-19 23:04:42 +00:00
Selim Cinek
54c857cda6 Merge "Cleaned up the logic for the picture end margin" into nyc-dev 2016-02-19 23:04:26 +00:00
Selim Cinek
3c306d8acd Merge "Added the possibility to show custom notifications decorated." into nyc-dev 2016-02-19 23:03:38 +00:00
Yorke Lee
dcd93cc21a Add Wallpaper.getBitmapAsUser()
Add a new API to allow a wallpaper bitmap to be obtained for
a specific user.

Without this API, using only getWallpaperFile(..., userId), one
can't get a default wallpaper bitmap if the wallpaper is not set.

Bug: 25185253
Change-Id: Ibe1e9a49d22bee08fd4bed415573c1ee28526aea
2016-02-19 14:47:39 -08:00
Dimitry Ivanov
b9c9026bdd Construct classloader for apps with no java code
The commit 6f06ad7df1
fixed a way to load native library for NativeActivity
by using classloader logic to find the library; which
also fixed the problem of native activity not working
when library is supposed to be opened directly from
the apk.

As a side effect it introduced regression - apps without
java code did not have correctly initialized classloader.
This change fixes this by constructing classloader with
empty dexpath but valid nativeLibrarySearchPath.

Bug: http://b/26015561
Bug: http://b/27250344
Change-Id: I50f1119f0976a95edd75d88efb9fcdedc57efbc3
2016-02-19 14:09:20 -08:00
Selim Cinek
03eb3b7c44 Add support for custom media notifications
Custom media notifications can now also be decorated by the system
instead of going fully custom.

Bug: 26961842
Change-Id: I1d85a652b93f10988939b471a14b372671acfaf1
2016-02-19 11:54:42 -08:00
Selim Cinek
247fa01931 Cleaned up the logic for the picture end margin
This allows decorated custom remote views to be properly
showing with a large image.

Bug: 24866646
Change-Id: Ie355e503437f19ace2503d42f44bee4bd22f03c8
2016-02-19 11:54:41 -08:00
Selim Cinek
593610c248 Added the possibility to show custom notifications decorated.
Bug: 26961842
Change-Id: I3966a4e6ecb05b9f284ec5b244b2594f78bcb337
2016-02-19 11:52:12 -08:00
Tao Bao
e8a403d57c Add support for update-on-boot feature.
Add a separate system service RecoverySystemService to handle recovery
related requests (calling uncrypt to de-encrypt the OTA package on the
/data partition, setting up bootloader control block (aka BCB) and etc).

We used to trigger uncrypt in ShutdownThread before rebooting into
recovery. Now we expose new SystemApi (RecoverySystem.processPackage())
to allow the caller (e.g. GmsCore) to call that upfront before
initiating a reboot. This will reduce the reboot time and get rid of the
progress bar ("processing update package"). However, we need to reserve
the functionality in ShutdownThread to optionally call uncrypt if
finding that's still needed.

In order to support the update-on-boot feature, we also add new
SystemApis scheduleUpdateOnBoot() and cancelScheduledUpdate() into
android.os.RecoverySystem. They allow the caller (e.g. GmsCore) to
schedule / cancel an update by setting up the BCB, which will be read by
the bootloader and the recovery image. With the new SystemApis, an
update package can be processed (uncrypt'd) in the background and
scheduled to be installed at the next boot.

Bug: 26830925
Change-Id: Ic606fcf5b31c54ce54f0ab12c1768fef0fa64560
2016-02-19 11:31:45 -08:00
Julia Reynolds
73d96fb4bb Merge "Remove Notification Topics." into nyc-dev 2016-02-19 19:17:25 +00:00
Polina Bondarenko
f8754ac212 Added hardwareproperties SystemService
Add HardwarePropertiesManagerService which call native methods to
get CPU, GPU, battery temperatures, CPU usage info, fan speeds.
Restrict hardware properties retrieval only for device and profile
owners.

Bug: 26945055
Change-Id: I4d6b30b78e575532d5e9cfa59ef6cd81355439d4
2016-02-19 18:24:29 +01:00
Svetoslav Ganov
5350306989 Merge "Don't hold a lock while reading shared preferences from disk." into nyc-dev 2016-02-19 17:12:40 +00:00
Svet Ganov
96db26032e Don't hold a lock while reading shared preferences from disk.
Shared prefrences loads thir content from disk on a separate
thread to improve performance, however it holds the lock
the whole time  while reading from disk which as a result blocks
operations that don't rely on reading data from being performed
intil load completes, e.g. reguistering a prefernces change
listener does not depend on having the data loaded.

bug:5254577

Change-Id: I5ad67b285631c34d5aadac7138ba8bfaa728cf94
2016-02-19 09:11:39 -08:00
Esteban Talavera
552a561b5c Updated removeActiveAdmin documentation
Bug: 13176294
Change-Id: I0554c2c9a1f4aaa4283474ab7810678004985a2f
2016-02-19 17:02:24 +00:00
Calin Juravle
d96d2ddc23 Change the location of profile files.
Bug: 26719109
Bug: 26563023
Change-Id: I8e9e03a58a7926c72283788c5eb49ae680e85cc3
2016-02-19 13:42:02 +00:00
Esteban Talavera
44da29407f Merge "Update DevicePolicyManager parent instance documentation" into nyc-dev 2016-02-19 09:37:23 +00:00
Svetoslav Ganov
0f3431b616 Merge "Improve requestPermissions API docs and throw correct exception." into nyc-dev 2016-02-19 04:03:50 +00:00
Svet Ganov
f66381cd0d Improve requestPermissions API docs and throw correct exception.
bug:26220898

Change-Id: Iebda3fe13b963b10829de917fb00a9a14186b72c
2016-02-18 20:02:40 -08:00
Adam Powell
35c8e0fcf2 Merge "Fix NPE for Fragment#setUserVisibleHint(true)" into nyc-dev 2016-02-18 23:44:15 +00:00
Adam Powell
255b008afe Fix NPE for Fragment#setUserVisibleHint(true)
Fix a bug where calling setUserVisibleHint(true) before adding a
Fragment to a FragmentManager could cause a crash.

Bug 27250018

Change-Id: Id192ae31bab95f15d32de9f105e707bdb8691641
2016-02-18 15:17:29 -08:00
Christopher Tate
be132e6ea4 Keyguard wallpaper
Clients can now set a lock-only wallpaper that Keyguard can
observe and choose to draw as appropriate.

Bug 25454162

Change-Id: I3fc30e02919e814b55dfded2a1a36ad9d2e55299
2016-02-18 15:01:02 -08:00
Antonio Cansado
12d7ea815b Merge "Implementation of data usage callbacks." into nyc-dev 2016-02-18 19:43:42 +00:00
Jeff Sharkey
2c1ba9a961 Make BackupManager encryption aware.
Backup requires both CE and DE storage to be available, so delay
spinning up the backup system until the user is unlocked, since
that's when CE storage becomes available.  Note that devices without
FBE immediately transition USER_SYSTEM into the unlocked state,
since their CE is always available.

Offer to backup and restore files under both CE and DE.  Since DE
is effectively the same as CE, most logic is simply duplicated for
now, but it could be simplified in the future.  Since system apps
can force their default storage location to DE, we always build
explicit CE and DE paths.

Add getDataDir() to give clean access to the top-level private data
directory, but disclaim that apps shouldn't create files there.

Bug: 26279618
Change-Id: Ic34a4b330223725db93b1d0f5c9dffc88002c61f
2016-02-18 10:54:11 -07:00
Julia Reynolds
ef37f28436 Remove Notification Topics.
Bug: 23220370
Change-Id: Ifbcdbab1cf6974c192483091512f75762784a98e
2016-02-18 08:55:33 -05:00
Esteban Talavera
c1c8359072 Update DevicePolicyManager parent instance documentation
Update documentation for the DevicePolicyManager regarding APIs
that can be called on the DPM's parent instance.

Bug: 26903406
Bug: 27065927
Change-Id: I45cb8de0ab9ad26812ba502820264b68c36c88fd
2016-02-18 13:42:52 +00:00
Julia Reynolds
d4ea741d66 Inflate and strip remote views for pre-N apps.
Bug: 27120291
Change-Id: I4e1497222f3787e68c3e385e45ab6a7c23799917
2016-02-18 08:35:45 -05:00
Antonio Cansado
cd42acd951 Implementation of data usage callbacks.
NetworkStatsService will register data usage requests
and keep data usage stats scoped to the request.

There are different types of data usage requests
- scoped to a set of NetworkTemplate; these are restrictred to
device owners and carrier apps and allow the caller to monitor
all activity on the specified interfaces.
- scoped to all uids visible to the user, if the user has
android.Manifest.permission#PACKAGE_USAGE_STATS permission.
The set of uids may change over time, so we keep track of that.
- scoped to a set of uids given by the caller, granted that
the caller has access to those uids.
- scoped to the caller's own data usage. This doesn't require
PACKAGE_USAGE_STATS.

Bug: 25812785
Change-Id: Ie11f35fc1f29d0dbe82f7fc924b169bb55c76708
2016-02-17 18:43:53 -08:00
Winson
2d47683ab9 Only set the task description if the colors are opaque.
Bug: 27214638
Change-Id: I75e0b8871087f0b8e6acd16dc751bb6374c0f968
2016-02-17 23:23:45 +00:00
Makoto Onuki
fc482c30b7 Merge "[framework] Don't allow apps on external storage to be active admin" into nyc-dev 2016-02-17 22:48:13 +00:00
Makoto Onuki
f34db0a17e [framework] Don't allow apps on external storage to be active admin
Bug 27149287

Change-Id: I6d959d2e66dc0b19f78e6135fbdcf45ca8551958
2016-02-17 14:24:25 -08:00
Amith Yamasani
0137c3daf4 Merge "Clean up App Standby code" into nyc-dev 2016-02-17 21:50:32 +00:00
Amith Yamasani
ca5d6d2a81 Clean up App Standby code
Don't continue to check idle states for removed / stopped users.
No need to check for uninstalled packages for all users.

Bug: 27208519
Change-Id: I9a3a3bbec560dd380ce90df9fef102d7f62769ca
2016-02-17 13:36:48 -08:00
Edward Cunningham
e619e33b60 Merge "DO NOT MERGE Extend the DownloadManager.addCompletedDownload() method to support origin details." into nyc-dev 2016-02-17 17:50:45 +00:00
Andrei Stingaceanu
3e7bfe98e0 Merge "Suspend packages - one call for multiple packages" into nyc-dev 2016-02-17 15:17:35 +00:00
Andrei Stingaceanu
eb84b1843a Suspend packages - one call for multiple packages
Refactor setPackageSuspended into setPackagesSuspended. The rationale
is that the consumers of this API are likely to want to remove
multiple packages at once. Rather than calling the API N times, call
it just once.

The good part is that we already have the broadcast intent for
suspended packages take an array so only one broadcast. Less stress
on the system.

Another good part is that (right now) we only have one consumer of
this API and it will be easy to make changes once this CL goes in.

As a shell command, for consistency only allowed one package at
a time.

Bug: 22776761
Change-Id: Ic8b8cf64d0a288ea3a282bb7b72f9d663b3b0049
2016-02-17 15:14:33 +00:00
Sergey Poromov
af11ff0c03 Merge "Fix BackupTransport#getBackupQuota() javadoc." into nyc-dev 2016-02-17 13:46:23 +00:00
Andrei Stingaceanu
5ae4e73ef0 Merge "Suspend packages - new API for retrieving the suspended status" into nyc-dev 2016-02-17 11:57:51 +00:00
Jorim Jaggi
8a5c64062f Fix recents transitions
- Also animate when there is no thumbnail, which can frequently
happen after exiting multi-window.
- Also animate when the target stack id is INVALID, because we
currently don't persist stack id's in the tasks.

Change-Id: I280c85e62f55d712408a3e77c43f665acb19bc4c
2016-02-17 06:17:48 +00:00
Wale Ogunwale
5a21494d6e Merge changes from topic 'flaky-test' into nyc-dev
* changes:
  Fixed issue with losing window name when copying WindowManager.LayoutParams
  Added AM API to remove a stack
  Don't resume activity on start if there are activities pausing.
2016-02-16 22:32:23 +00:00
George Mount
d6505566a9 Merge "Don't use forceVisibility for Activity Transitions." into nyc-dev 2016-02-16 21:37:39 +00:00
Edward Cunningham
baccf15a4a DO NOT MERGE Extend the DownloadManager.addCompletedDownload() method to support origin details.
Bug: 20294239
Change-Id: Ic770a223c23013ebab08d22dd14e7192dc8e3109
(cherry picked from commit 735a31e093)
2016-02-16 19:27:32 +00:00