Commit Graph

101723 Commits

Author SHA1 Message Date
Richard Uhler
82913b7123 Fix rollbacks in multi-user case.
There are a few assumptions in the rollback manager that fail in the
multi-user case that need to be fixed:
* getAllSessions only returns sessions for the specific user.
* Session callbacks are only called on sessions associated with the
  registered user.
* getPackageInfo only returns info for the specific user.

Fix these issues so that rollbacks will work properly, in particular
when the initial install session is owned by a non-system user.

Bug: 129809507
Bug: 129397974

Test: On single user device: atest RollbackTest StagedRollbackTest
Test: On primary user of multi-user device: atest RollbackTest StagedRollbackTest
Test: On multi user device manually:
    adb install RollbackTestAppAv1.apk
    adb install --user 10 --enable-rollback RollbackTestAppAv2.apk
    -- verify the install succeeded --
    adb shell pm rollback-app com.android.tests.rollback.testapp.A
    -- verify the rollback succeeded --

Test: On multi user device manually:
    adb install RollbackTestAppAv1.apk
    adb install --staged --user 10 --enable-rollback RollbackTestAppAv2.apk
    adb reboot
    -- verify the install succeeded --
    adb shell pm rollback-app com.android.tests.rollback.testapp.A
    adb reboot
    -- verify the rollback succeeded --

(cherry picked from commit d81ff97866)

Merged-In: I1a7cf101b3bc3575421629c4bf0ff63418eb8731
Change-Id: I1a7cf101b3bc3575421629c4bf0ff63418eb8731
2019-04-05 11:54:44 +00:00
Kevin Chyn
12852fdc7d Merge "Add secure setting to cache attention" into qt-dev 2019-04-05 06:33:37 +00:00
TreeHugger Robot
9620e07e4f Merge "Sharesheet - Fix portrait -> landscape switch" into qt-dev 2019-04-05 05:33:13 +00:00
TreeHugger Robot
410d783f5b Merge "Add draw props back to greylist" into qt-dev 2019-04-05 03:30:48 +00:00
Kevin Chyn
b6d2d91f2d Add secure setting to cache attention
Fixes: 129912479

Test: Builds
Change-Id: I48979c65fc33bb5d70198f549a0ea863257e0247
2019-04-04 17:31:25 -07:00
TreeHugger Robot
cbf999bd4f Merge "Camera: Clarify camera1 API behavior for getNumberOfCameras" into qt-dev 2019-04-05 00:13:29 +00:00
Makoto Onuki
5e7b4175b7 Merge "Change ISE to AssertException, which is more suitable." into qt-dev 2019-04-04 23:56:29 +00:00
Makoto Onuki
58d5470580 Change ISE to AssertException, which is more suitable.
Bug: 129139241
Bug: 129721058
Test: Treehugger
Change-Id: I12e97f37a58e1d88731a9bddd933abeb8c1169c1
2019-04-04 13:42:47 -07:00
Matt Pietal
399e8c74ee Sharesheet - Fix portrait -> landscape switch
Calculating the reserved height was using the wrong figures. Expose
the correct reserved alwaysShow height, and use it to determine the
offset for scrolling.

Bug: 120419081
Test: manual, rotate device
Change-Id: I21fd9fa8494a258d17f6002f79967aacc0efde34
2019-04-04 15:49:48 -04:00
Yohei Yukawa
49efa718a8 Introduce a result class for IStatusBarService#registerStatusBar()
This is a preparation to fix an issue that IME cannot enable light
navigation bar on direct-reply.

The initial state of StatusBar client is provided as return values of
IStatusBarService#registerStatusBar().  However, the way for the
client to receive the return values is to rely on "out" parameters in
the Binder method as follows.

    void registerStatusBar(IStatusBar callbacks,
            out List<String> iconSlots,
            out List<StatusBarIcon> iconList,
            out int[] switches,
            out List<IBinder> binders,
            out Rect fullscreenStackBounds,
            out Rect dockedStackBounds);

The issue is that if I want to add a new parameter into
StatusBarManagerService to fix Bug 122439339, then it needs to be
notified back to the client via one of these out values, e.g. a new
element in "switches", which is hard to understand and maintain.

It'd be better to introduce a dedicated return object as follows.

    RegisterStatusBarResult registerStatusBar(IStatusBar callbacks);

This is a purely mechanical code clean-up.  Hence there should be no
behavior change.

Bug: 122439339
Test: presubmit
Change-Id: Ib1c0ae8f591ca09d0bce7a39f85ba57aad386e47
2019-04-04 11:49:02 -07:00
John Reck
0c7027d86b Add draw props back to greylist
Bug: 129957634
Test: none
Change-Id: Iaf2d7f8dc0f5d6f1b0dc12025210820bf8255f67
2019-04-04 18:05:10 +00:00
Shuzhen Wang
64ed101290 Camera: Clarify camera1 API behavior for getNumberOfCameras
Expose at most 1 camera ID per facing for all logical-physical camera ID
groups.

Test: Build and read docs
Bug: 113705942
Change-Id: I86a06562eafd600d351d8db2582a613b3323404c
2019-04-04 15:55:37 +00:00
Jorim Jaggi
a6aabacbb5 Force app to draw navigation bar background
For gestural navigation, having a small bar drawn by SystemUI
looks really really weird. Since we force the status bar
background to be drawn in the client, we can also force the
navigation bar background without expecting any compat issues.

Bug: 129751541
Test: Open legacy app, ensure black is drawn in the client
Change-Id: I9cd4c5dd799324ff10bf9d28750e8f238ab1e459
(cherry picked from commit 461bb11371)
2019-04-04 07:27:10 +00:00
Yin-Chia Yeh
796820aa92 Merge "Camera: add QCIF resolution exception" into pi-dev
am: 5b09928b22

Change-Id: I20e60ef6d84c969b1651e449f5a076183d38a7c9
2019-04-04 00:14:38 -07:00
Susi Kharraz-Post
0c70be6738 Merge "Add logging for direct share target" 2019-04-04 00:03:56 +00:00
Kevin Chyn
9af1448d50 Merge "Make get/set feature async between settings and service" 2019-04-03 23:46:14 +00:00
TreeHugger Robot
259c73c007 Merge "Move NetworkStatsFactory into service directory" 2019-04-03 23:44:26 +00:00
Todd Kennedy
605d6b1d46 Merge "Return the update timestamp in getStagedSessions()" 2019-04-03 22:57:48 +00:00
TreeHugger Robot
2ae133285b Merge "Fix Global Actions animations, and use old power menu when panel is disabled. Also tweak feature flags setup to use old flag as a force option for debugging." 2019-04-03 22:36:29 +00:00
Christian Wailes
7df27e9e4e Merge "Adds Zygote.initNativeState" 2019-04-03 22:35:35 +00:00
Hyunyoung Song
b5e014a2fc Merge "Fetch roundIcon|icon depending on RRO overlayed config_useRoundIcon" 2019-04-03 22:18:35 +00:00
TreeHugger Robot
7e3051ca4e Merge "Fix NPE in RNA#callOnFinished" 2019-04-03 22:06:55 +00:00
TreeHugger Robot
7988315b01 Merge "Add support for /odm/overlay" 2019-04-03 21:56:39 +00:00
Susi Kharraz-Post
14cbfcdbd0 Add logging for direct share target
To answer the question if users share mainly with 1 or 2 direct targets
or with a multitude of contacts, we need to log the direct target +
package name. For privacy, this gets hashed with a salt that expires by
default every 7 days. The PH flag will allow us to change the expiration
time if we obtain PWG permission for that.

Bug: 126365511
Test: New test in ChooserActivityTest + manual testing of consistency
and flag rollout using adb shell device_config put systemui
hash_salt_max_days with multiple values

Change-Id: Ib4255b3eb39ca91ccb5803dc036ffe0ea83a27c9
2019-04-03 17:54:25 -04:00
Chenbo Feng
061cec7755 Move NetworkStatsFactory into service directory
In order to notify netd to swap eBPF maps before pulling the
networkStats from eBPF maps, NetworkStatsFactory need to use the
NetdServices to issue binder calls. So it need to be moved from
framework/base/core to framework/base/service since object in
framework/base/core cannot get any system services. This change is also
necessary for setting up a lock inside NetworkStatsFactory to prevent
racing between two netstats caller since the lock need to be hold before
netd trigger the map swap.

Also fix the compile problem caused by moving the NetworkStatsFactory
and the related tests. Rename the packages and the jni functions to a
more proper name.

Bug: 124764595
Bug: 128900919
Test: NetworkStatsFactoryTest
      android.app.usage.cts.NetworkUsageStatsTest
      android.net.cts.TrafficStatsTest

Change-Id: Ifcfe4df81caf8ede2e4e66a76552cb3200378fa8
2019-04-03 14:28:41 -07:00
Nicolas Geoffray
5d5972263f Merge "Use Class.forName instead of ClassLoader.loadClass." am: dc489aba0e am: 1b7fb8f7ae
am: cb6605192c

Change-Id: I953c2bb97dda4ca654e552d58bf56d884d609fc0
2019-04-03 14:22:03 -07:00
Chris Wailes
6d482d541e Adds Zygote.initNativeState
This patch replaces three seperate native initialization functions with
a single function, reducing the number of times we need to cross the JNI
boundary.  In addition this loads an empty performance profile for the
zygote to address b/129704892.

Bug: 129704892
Test: make & boot
Test: Treehugger
Change-Id: I0413f554e0963a714e0b4de3196d31ffe6775a3a
2019-04-03 13:42:35 -07:00
Aaron Heuckroth
c792661840 Fix Global Actions animations, and use old power menu when panel is disabled.
Also tweak feature flags setup to use old flag as a force option for debugging.

Test: Automated tests pass. Long-press power menu without plugin installed from different device orientations -- menu should animate in from the closest screen edge in all orientations and rotate correctly when device is rotated. Repeat after enabling the settings_global_actions_force_grid_enabled option in Feature Flags to ensure the correct behavior persists when using the new grid layout.

Fixes: 126444760
Fixes: 129698948

Change-Id: I9ac387244a5904f832c5d8b6c40362c00c6a22a2
2019-04-03 16:33:55 -04:00
Nicolas Geoffray
cb6605192c Merge "Use Class.forName instead of ClassLoader.loadClass." am: dc489aba0e
am: 1b7fb8f7ae

Change-Id: I41141b6fc6934faf086ea930b19539a0daba8298
2019-04-03 13:14:39 -07:00
Ryan Mitchell
e0c0c883aa Merge changes from topic "rro-cts"
* changes:
  RRO CTS Test APIs
  Relax restrictions on non-system overlays
2019-04-03 20:04:41 +00:00
Jean-Michel Trivi
c6d7460140 Merge "PlayerBase: conditional muting on OP_PLAY_AUDIO changes" 2019-04-03 19:58:59 +00:00
Nicolas Geoffray
1b7fb8f7ae Merge "Use Class.forName instead of ClassLoader.loadClass."
am: dc489aba0e

Change-Id: I80f1488c7cca5ce68555786a7951f30172c905f2
2019-04-03 12:44:56 -07:00
TreeHugger Robot
c2bb94fc29 Merge "Add package name when loadModules and attach." 2019-04-03 19:36:20 +00:00
TreeHugger Robot
ad0dbc493b Merge "Set packages.list context to packages_list_file." 2019-04-03 19:34:28 +00:00
Treehugger Robot
dc489aba0e Merge "Use Class.forName instead of ClassLoader.loadClass." 2019-04-03 19:24:22 +00:00
TreeHugger Robot
03a8c09514 Merge "Remove obscure check that was always true" 2019-04-03 18:19:02 +00:00
Ioannis Ilkos
9797c76e2f Merge "Add statically built regex pattern to avoid rebuilding all the time" 2019-04-03 18:02:27 +00:00
Jeff Sharkey
79a7407e20 Merge "Snapshot arguments before processing." 2019-04-03 17:58:22 +00:00
Todd Kennedy
719082db68 Merge "OverlayInfo API: fix @Nullable -> @NonNull" 2019-04-03 17:48:11 +00:00
Nicolas Geoffray
7ef8030754 Use Class.forName instead of ClassLoader.loadClass.
Class.forName has a fast path that ClassLoader.loadClass doesn't
have yet.

Bug: 129834244
Test: m
Change-Id: I52427be9dae5acd8eef530f706626246d16dc82a
2019-04-03 10:32:49 -07:00
Florian Mayer
d4db997a81 Set packages.list context to packages_list_file.
Bug: 123186697

Test: adb shell su root ls -lZd /data/system/packages.list
-rw-r----- 1 system package_info u:object_r:packages_list_file:s0 35816 2019-04-02 14:17 /data/system/packages.list

Change-Id: I62ae03b5c2acf6c703f2e4c6f49cc68825e3a785
2019-04-03 18:28:16 +01:00
Tyler Gunn
6b9102d88b Merge "Remove call identification APIs." 2019-04-03 17:18:10 +00:00
Olivier Gaillard
9c1abe61cd Merge "Change visibility of *WorkSourceUid APIs to public instead of @SystemApi." 2019-04-03 17:06:07 +00:00
TreeHugger Robot
a423d34851 Merge "Change KernelCpuThreadReader frequency bucketing to work with >2 core clusters" 2019-04-03 17:03:21 +00:00
Android Build Merger (Role)
c7cd1eb6eb Merge "Merge "Pass app's data dir to ART" am: 16749ac83e am: 33ed677361 am: 6277c39b0e" 2019-04-03 16:32:55 +00:00
David Brazdil
278f199a73 Merge "Pass app's data dir to ART" am: 16749ac83e am: 33ed677361
am: 6277c39b0e

Change-Id: Iec85a2630e364e66e45e42f2cbb6a26008c0ab4a
2019-04-03 09:30:44 -07:00
TreeHugger Robot
ffd5fb6954 Merge "Support content description with app name" 2019-04-03 16:30:08 +00:00
Makoto Onuki
b0bca0c5f7 Merge "Improve CursorWindow failure message" 2019-04-03 16:19:28 +00:00
Dario Freni
56c14ddc53 Return the update timestamp in getStagedSessions()
This CL adds a SessionInfo.getUpdateMillis() call to the API in order
for callers to figure out which session was applied last.

Change-Id: I3eed6c80f4777ee248671d17d9428eed2fe73aa8
Fix: 129546185
Test: atest CtsStagedInstallHostTestCases; atest apex_e2e_tests
2019-04-03 16:18:31 +00:00
David Brazdil
6277c39b0e Merge "Pass app's data dir to ART" am: 16749ac83e
am: 33ed677361

Change-Id: I9a7c617f13dadc91b735837d1778e3d526be8520
2019-04-03 09:13:31 -07:00