Commit Graph

10248 Commits

Author SHA1 Message Date
TreeHugger Robot
2a80419409 Merge "Catch reentrancy while executing postponed transactions." 2017-02-17 23:06:17 +00:00
TreeHugger Robot
dd903d4f0e Merge "Modifying dpm.setSecureSetting call for install_non_market_apps" 2017-02-17 23:05:48 +00:00
Suprabh Shukla
2e7d6d64b9 Modifying dpm.setSecureSetting call for install_non_market_apps
Starting from O, install_non_market_apps is deprecated and will not be
checked by the package installer. Device admin apps should be using the
user restriction instead.
Since on managed profiles, the default value blocked install from
unknown sources, the system will set the user restriction on behalf of
the profile owners (if the profile has one).
For non-managed profiles, the user had access to the settings to change
the value of install_non_market_apps. So going forward, any request to
change it's value by dpm#setSecureSetting in such users is going to be
ignored.

Test: Manually tested that:
1. For a profile with PO, when install_non_market_apps was set to 0,
user restriction is set on upgrade
2. For a profile with PO, when install_non_market_apps was set to 1,
user restriction is not set on upgrade
3. After upgrade, newly created managed profiles with PO have user
restriction set

Bug: 33947615
Change-Id: I063e9ee608b52086ffdf8ed2b24e2928574c58cd
2017-02-17 13:25:14 -08:00
TreeHugger Robot
96b9832163 Merge "API for accessing preloaded files cache" 2017-02-17 21:09:28 +00:00
TreeHugger Robot
8c9a6b0089 Merge "Revert "Revert "Per user setting for instant app""" 2017-02-17 20:46:12 +00:00
TreeHugger Robot
0df4c60716 Merge "Fix trampoline activities when relaunching PiP" 2017-02-17 20:14:24 +00:00
Fyodor Kupolov
61221290f5 API for accessing preloaded files cache
Added @SystemAPI method Context.getPreloadsFileCache.

Bug: 31008665
Test: manual
Change-Id: Id61ab5e1b78d8bfbd40f61985406a8de4082b30f
2017-02-17 10:40:54 -08:00
TreeHugger Robot
a4f3891d28 Merge "Mark clearDeviceOwnerApp/clearProfileOwner as deprecated" 2017-02-17 18:38:36 +00:00
Andrii Kulian
000fd43eec Merge "Report move to display for activities that handle config changes" 2017-02-17 18:27:29 +00:00
Winson Chung
49affea25b Fix trampoline activities when relaunching PiP
- We should be checking the actual launched-from package since that stores
  the source package across trampoline activities

Bug: 35458117
Test: Enter PiP from a trampoline activity, launch again from Launcher
      and ensure that it is expanded

Change-Id: Ia0e586e8b21dee63b513bd61a41a24e7da4325e1
2017-02-17 10:07:30 -08:00
Bartosz Fabianowski
4f7e1fc9af Merge "Add API for checking whether the default IME was set by the DO/PO" 2017-02-17 17:53:02 +00:00
George Mount
521862de53 Catch reentrancy while executing postponed transactions.
Bug 35349893

While executing postponed transactions, it was possible for
Fragments to call commitNow() or executePendingTransactions()
and therefore causing disallowed reentrancy.

This CL now prevents reentrancy while executing postponed
transactions.

Test: I11e10f4d9868a31b8b1616a051e381fe8c7af331

Change-Id: Icb0d4386657c35b4edf34f95dc48aa694e66b298
2017-02-17 08:04:00 -08:00
Esteban Talavera
5b7f2d0858 Backup service APIs not available on parent profile instance
Bug: 35432611
Test:  cts-tradefed run cts-dev --module DevicePolicyManager --test  com.android.cts.devicepolicy.ManagedProfileTest#testParentProfileApiDisabled
Change-Id: Ia1621183dee17dcd183a668f1714b563f79e5b17
2017-02-17 09:45:24 +00:00
Andrii Kulian
b047b8bd7e Report move to display for activities that handle config changes
When activity that is moved between displays handles all configuration
changes, it won't be restarted. This CL adds a callback to the client
to notify it about display change. Usually it will be followed by
onConfigurationChanged, except when configuration didn't actually change.
When activity is recreated, it won't receive onMovedToDisplay.

Bug: 34862802
Test: android.server.cts.ActivityManagerDisplayTests
Test: #testOnMovedToDisplayCallback
Change-Id: I9a9501cab788623ada15a31efb53e4b2378639fe
2017-02-16 17:33:59 -08:00
Todd Kennedy
be0b8896d1 Revert "Revert "Per user setting for instant app""
This reverts commit be9ffa15af.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAppSecurityHostTestCases -t android.appsecurity.cts.EphemeralTest
Change-Id: Ib21321cf157a79890de487060a093840f7182047
2017-02-16 12:43:37 -08:00
Esteban Talavera
a5b0963c0c Mark clearDeviceOwnerApp/clearProfileOwner as deprecated
Bug: 33175679
Test: runtest -c com.android.server.devicepolicy.DevicePolicyManagerTest    frameworks-services
Change-Id: I05e10638d838ccf8dc67b7a01b3ffeb7cbea8500
2017-02-16 18:47:06 +00:00
Makoto Onuki
467d4ab03d Merge "Make the DPM account strings system-APIs." 2017-02-16 17:58:02 +00:00
Felipe Leme
387f45d78f Merge "Add URL on ViewStructure." 2017-02-16 16:04:22 +00:00
Bartosz Fabianowski
aff5e9c21c Add API for checking whether the default IME was set by the DO/PO
With this API, the system can determine whether a user's default
IME was set by the user or the user's DO/PO.

Bug: 32692748
Test: DPMS unit tests and CTS CtsDevicePolicyManagerTestCases

Change-Id: Ibd703ff5c9e4c072599ad8d6023c94a97d728109
2017-02-16 13:07:11 +01:00
Svet Ganov
da0acdf938 Auto-grant background execution and data access
Companion apps can declare they want background access and
background execution exceptions via dedicated permissions
in their manifest. If such a permission is requested we
auto-grant the corresponding exception after the user has
chosen a device from the companion UI. These permissions
are appop ones allowing us to use the app ops for gauging
whether the user has made a change after we auto-granted
the permission since we would like to revoke these special
privileges when the app disassociates itself from the
companion device if the user did not make an excplicit
choice otherwise.

While at this auto-grant fixed location permission to the
companion device discovery service.

Test: manual

Change-Id: I46ee4291e5e5a8f7613f0dd75eb61d6b9341f306
2017-02-15 20:32:41 -08:00
Felipe Leme
c32410068d Add URL on ViewStructure.
The URL will be typically used by views rendering HTML pages (like WebView),
and used in 2 cases

- Root node (containing the URL of the HTML page)
- Child nodes that represent hyperlinks (contains the hyperlink URL).

Fixes: 20902429
Test: manual verification
Test: android.assist.cts.WebViewTest verifies it

Change-Id: Ic49472f1fca89047369b7187176f54efd277e204
2017-02-15 18:15:46 -08:00
Rubin Xu
824b073fbe Merge "Add escrow token API in DevicePolicyManager." 2017-02-16 01:36:46 +00:00
Guang Zhu
626ffb4556 Merge "Revert "Per user setting for instant app"" 2017-02-15 21:47:34 +00:00
Guang Zhu
be9ffa15af Revert "Per user setting for instant app"
Bug: 35390781

This reverts commit 2f5811dcfd.

Change-Id: Ibb1c8dacbdc6908fc7fa2bc5dca664f2455162bf
2017-02-15 21:43:48 +00:00
Philip P. Moltmann
9a044dad00 Merge changes from topic 'revert-anr-revert'
* changes:
  Process queuedWork on main thread and add logging
  Revert accidential merge 492a058d58
2017-02-15 21:37:34 +00:00
Selim Cinek
b52448c8b5 Merge "Fixed a few coloring issues" 2017-02-15 20:08:58 +00:00
Rubin Xu
aab7a4146c Add escrow token API in DevicePolicyManager.
Take advantage of the new authentication flow in LockSettingsService
and allow PO or DO to provision escrow tokens on the device. The
escrow token grants them the ability to change device lockscreen
(if used by DO) or work profile challenge (if used by PO). The
new password reset mechanism is even usable before user unlocks,
and it preserves authentication-bound keys in keystore.

Test: runtest frameworks-services -c com.android.server.SyntheticPasswordTests
Test: runtest frameworks-services -c com.android.server.devicepolicy.DevicePolicyManagerTest
Test: cts-tradefed run cts-dev -m CtsDevicePolicyManagerTestCases -t com.android.cts.devicepolicy.MixedDeviceOwnerTest#testResetPasswordWithToken
Bug: 33126620
Change-Id: Iaa684c51946f726cbd909e9ac70ad3e9ca3de1ac
2017-02-15 19:54:31 +00:00
Philip P. Moltmann
a211bc1a03 Process queuedWork on main thread and add logging
- The queued work processing thread might be sleeping while the main
  thread is waiting for it to do work. Hence process the work in the main
  thread.
- Carefully add logging so that slowness can be tracked.
- Fix usage of the wrong lock (sWork instead of sLock).
- Increase the time of the delay between apply and write to make
  possible side-effects more visible

Test: SharedPrefencesTest, looked at logging
Bug: 30662828
Change-Id: Ie8a5d531e180dacec29c947ba0b59b170facf782
2017-02-15 11:27:27 -08:00
Todd Kennedy
bf92b812db Merge "Per user setting for instant app" 2017-02-15 19:19:26 +00:00
Felipe Leme
a45eb7eb12 Merge "Enable auto-fill when activity is marked as FLAG_SECURE." 2017-02-15 07:48:48 +00:00
Felipe Leme
71377a4ae2 Enable auto-fill when activity is marked as FLAG_SECURE.
BUG: 34077687
Test: CtsAutoFillServiceTestCases passes
Change-Id: I2d7a565a53a32792d6daeceba3f3a7beebdf052c
2017-02-14 18:19:08 -08:00
Selim Cinek
875ba9bd8e Fixed a few coloring issues
The color of the icon was happening in a
non-animated way. We're now animating the
color properly.
This also fixes an issue where the action
bar could be fully black.

Test: add colorized notification, observe animation
Fixes: 35308322
Change-Id: I4fbc1794fc027efb42eee3ee8f06fd9d8c513456
2017-02-14 17:28:15 -08:00
Philip P. Moltmann
82b902204f Revert accidential merge 492a058d58
Test: Clean revert
Change-Id: I61d339bb85936e1d50742be1e4c6dab781f3a4e7
2017-02-14 17:02:50 -08:00
Amith Yamasani
dd757883c2 Merge "Fix NPE in handleBindApplication" 2017-02-15 00:55:01 +00:00
Amith Yamasani
336d29d409 Fix NPE in handleBindApplication
Use getPackageManager(), as sPackageManager might not be initialized
yet.

Bug: 35359850
Test: manual
Change-Id: I16f5af613e9f6a6dc776bd2da74779e509899541
2017-02-14 15:14:09 -08:00
TreeHugger Robot
7ad2067f98 Merge "Add API to track package changes" 2017-02-14 23:10:59 +00:00
Todd Kennedy
2f5811dcfd Per user setting for instant app
The same application can run as either an instant app or an installed
app. Store this setting per-user instead of based upon the install
location.

Bug: 25119046
Test: cts-tradefed run commandAndExit cts-dev -m CtsAppSecurityHostTestCases -t android.appsecurity.cts.EphemeralTest
Change-Id: Iff565bb1ac10d631499f0bd0f69b401cb073c10e
2017-02-14 13:42:01 -08:00
TreeHugger Robot
8b39573f15 Merge "Heads-up notifications of increased height behave better" 2017-02-14 21:07:22 +00:00
Todd Kennedy
9106c64bf3 Add API to track package changes
After any package install, removal or update, save the changed
package and update a global sequence number. At any point, apps
can query for the packages changed since a particular sequence
number.

If a package is changed multiple times, it is only included once
in the change list.

Bug: 33865505
Test: Create sample app to query for changes and see which packages are changed after performing certain operations
Change-Id: Ia4646035362b16a97110e05f3f909ce385b48428
2017-02-14 12:44:50 -08:00
TreeHugger Robot
79b9853f49 Merge "Disable TaskSnapshots to fix crashes for DP." 2017-02-14 18:55:25 +00:00
Robin Lee
3cb867326a Merge "Theme work lock activity with the task primaryColor" 2017-02-14 18:38:14 +00:00
Philip P. Moltmann
492a058d58 resolve merge conflicts of d043a840f7 to nyc-mr2-dev-plus-aosp
am: b02f8eb241

Change-Id: I1307ea308423c0fd34564d788ab64c023a5be2c5
2017-02-14 18:28:25 +00:00
Philip P. Moltmann
b02f8eb241 resolve merge conflicts of d043a840f7 to nyc-mr2-dev-plus-aosp
Test: Clean merge
Change-Id: Ib2420ff793fdf22fd80cfaed7848ff6b8be8d382
2017-02-14 09:51:16 -08:00
Robert Carr
280d1e55ef Disable TaskSnapshots to fix crashes for DP.
Renderthread can't crash in system server if you don't
have Renderthread in system server.

Bug: 34817544
Bug: 34840652
Test: Basically a revert
Change-Id: Ic7384b8b1f22459f4a299a84425af91515a92551
2017-02-14 09:12:18 -08:00
Philip P. Moltmann
d043a840f7 Merge "[DO NOT MERGE] Revert "[DO NOT MERGE] Delay SharedPreferences.apply() by 50 ms"" into nyc-mr2-dev 2017-02-14 16:03:32 +00:00
TreeHugger Robot
02761acc67 Merge "Declarative downloadable fonts" 2017-02-14 15:39:04 +00:00
Shreyas Basarge
bf6655b315 Merge "BackupManager#cancelBackups() API" 2017-02-14 13:53:33 +00:00
Shreyas Basarge
c3704427c9 BackupManager#cancelBackups() API
Introduces a cancelBackups() API for
BackupManager. When this function returns,
it is guaranteed that currently running
backup operations won't interact with
the active transport.

Bug: 34760860

Ref: https://docs.google.com/document/d/18MnfwkDfKNtXQBPRmL8vpVgfLgSWJsDja1Nm1QV5hOw/edit#heading=h.9p6yo0wx44k3

Test: GTS tests at ag/1893365

Change-Id: I67f78699bbe763ea71c85937fbc01a5b48694eed
2017-02-14 13:51:59 +00:00
Clara Bayarri
4b5a4d221f Declarative downloadable fonts
Implement support for downloadable font requests in xml. Given the
xml fonts feature in O, this adds support to not only declare
local font files as font resources, but also Downloadable fonts
from a fonts provider.

A provider returns a font family (of one or more files) given a
query, so the new attributes are added to the font-family tag.

Additionally, add support to pre-declare downloadable font resources
in the Android Manifest. These will then be fetched at app startup
time so they are available to use from the Typeface cache asap.

When retrieving downloadable fonts via resources, the cache is
checked to see if the font is already there and is used, otherwise
a request is sent to the provider and the default font is returned
as we need a result synchronously.

To do this, the developer declares an additional fonts xml resource
file with the list of fonts to preload and links it in the manifest
with a meta-data tag.

E.g.:

res/font/mydownloadedfont.xml

<font-family xmlns:android="http://schemas.android.com/apk/res/android"
        android:fontProviderAuthority="com.example.test.fontprovider"
        android:fontProviderQuery="myrequestedfont">
</font-family>

res/font/preloaded_fonts.xml

<?xml version="1.0" encoding="utf-8"?>
<font-family xmlns:android="http://schemas.android.com/apk/res/android">
    <font android:font="@font/mydownloadedfont" />
</font-family>

and in the AndroidManifest.xml

<meta-data android:name="preloaded_fonts"
    android:resource="@font/preloaded_fonts" />

Bug: 34660500, 34658116
Test: WIP, need to add more
Change-Id: I1d92555e115e241bf23b59e6f5c6cca6c7361de7
2017-02-14 13:32:41 +00:00
TreeHugger Robot
4dba3cdf89 Merge "Refactor auto-fill" 2017-02-14 09:37:53 +00:00