Commit Graph

13150 Commits

Author SHA1 Message Date
Lorenzo Colitti
3cafea0701 Merge "Allow applications to query for foreground/background data usage." into pi-dev 2018-04-02 22:20:03 +00:00
Dianne Hackborn
886fc6aef0 Merge "Work on issue #74404949: Screen state usage API" into pi-dev 2018-04-02 20:48:51 +00:00
TreeHugger Robot
3f6b7714a7 Merge "Don't use a copy of window params when showing a dialog." into pi-dev 2018-04-02 19:22:58 +00:00
Andrii Kulian
38af02e75b Merge "Don't finish activity on duplicate resume request" into pi-dev 2018-04-02 17:58:42 +00:00
Felipe Leme
15d403dd6a Don't use a copy of window params when showing a dialog.
When a Dialog's show() method is called, it makes a copy (l) of its window param
and change the copy's softInputMode before calling wm.addView(). This call ends
up calling WindowManagerGlobal.addView(view, l, display, parentWindow),
which in turn sets the application token from the parentWindow into l and stores
l on its mParams map.

Later, when the dialog layout is changed (for example, if it's resized), the
original params ends up passed to WindowManagerGlobal.updateViewLayout(),
which in turn updates it's internal mParams with it, hence losing the
application token (as the token was set in the copy).

Then, when Autofill (and possibly Assist) is triggered to that activity, the
Dialog's view hierarchy is ignored because WindowManagerGlobal.getRootViews()
ignores views whose params do not have an application token.

This CL fixes this issue by passing the original dialog's param to the wm
method and resetting the softInputMode that was changed, rather than making a
copy.

Test: atest DialogLauncherActivityTest
Test: manual verification with Twitch

Fixes: 68816440

Change-Id: I55f510ab7a44030bc368221b7db1a221bc2e09c8
2018-04-02 10:07:40 -07:00
Lorenzo Colitti
84b317cecf Allow applications to query for foreground/background data usage.
Currently the NetworkStatsManager APIs allow applications to
query for their own data usage by UID and tag, but do not allow
applications to query by foreground/background state.

This is causing popular apps to resort to parsing xt_qtaguid
stats files directly. Because this is no longer allowed for apps
targeting P and above, provide replacement functionality.

This API allows apps to query for data usage for a given state,
but not to receive data usage broken down by state. This is
consistent with how the current UID and tag APIs work. It is also
not an undue burden on apps: there are currently only two states
of interest (FOREGROUND and everything else), and even if we add
states in the future, unmodified apps can still obtain total
traffic using STATE_ALL.

Bug: 72977484
Test: New CTS test added in other change in this topic.
Change-Id: Ic8c9194569ffd599b49e4a8197c5c2ea0ec3f7f7
2018-04-02 19:58:24 +09:00
Dianne Hackborn
21306849e6 Merge "Fix issue #77230164: Add app op to control foreground services" into pi-dev 2018-04-01 22:26:18 +00:00
TreeHugger Robot
703f31db63 Merge "Add subtype for layout direction to Slice" into pi-dev 2018-03-31 04:16:35 +00:00
Dianne Hackborn
3378aa9f88 Work on issue #74404949: Screen state usage API
Add events for the keyguard being shown and hidden.

Bug: 74404949
Test: atest CtsUsageStatsTestCases:UsageStatsTest\#testInteractiveEvents
Change-Id: I038e03cf4ba80669d7d17c3d66b98ee81050abc8
2018-03-30 17:43:49 -07:00
TreeHugger Robot
35201a6af2 Merge "Add some methods to manage slice permissios" into pi-dev 2018-03-31 00:26:06 +00:00
Mady Mellor
209af08eca Add subtype for layout direction to Slice
Test: make
Bug: 73123366
Change-Id: I1446dadd8a50e7682d640aa55a7d4a20faf52416
2018-03-30 14:24:13 -07:00
Dianne Hackborn
e9d9b4b9a2 Fix issue #77230164: Add app op to control foreground services
New app op added.

Bug: 77230164
Test: atest CtsAppTestCases:ActivityManagerProcessStateTest\#testForegroundServiceAppOp
Change-Id: I59f2f03850da4b9f5550e82ba28f175e4779e783
2018-03-30 13:10:54 -07:00
TreeHugger Robot
4ced90cb12 Merge "Add auto-grant permission slice API" into pi-dev 2018-03-30 18:45:00 +00:00
Jason Monk
71888552d8 Add some methods to manage slice permissios
Test: update-api
Bug: 77323760
Change-Id: I72284957c7dfc3bcf12bb24a6be4902762e95fed
2018-03-30 14:29:38 -04:00
TreeHugger Robot
7790a2f2d1 Merge "Add more AppComponentFactory docs" into pi-dev 2018-03-30 17:08:23 +00:00
Jason Monk
42e03f8756 Add auto-grant permission slice API
Test: slice manager tests
Bug: 77313888
Change-Id: I21e9200c5c8cd7ff812d3f5eac997a704a9b86a2
2018-03-30 11:39:36 -04:00
TreeHugger Robot
ea3377b4d4 Merge "Slices: Fix up some formatting and add examples" into pi-dev 2018-03-30 15:09:26 +00:00
Jason Monk
c138696489 Add more AppComponentFactory docs
Test: TH
Change-Id: I9978d182433a71a04d019304ebe59bd7de8bfeae
Fixes: 74408467
2018-03-30 09:57:36 -04:00
Rubin Xu
69196f6fad Merge "Remove password blacklist API" into pi-dev 2018-03-30 13:38:31 +00:00
Remi NGUYEN VAN
bd2c0fa813 Merge "Allow null subscriberId in NetworkStatsManager." into pi-dev 2018-03-30 07:39:23 +00:00
Remi NGUYEN VAN
786b7ad260 Allow null subscriberId in NetworkStatsManager.
Use a MATCH_MOBILE_WILDCARD template to avoid filtering by
subscriberId when querying statistics from NetworkStatsService.

Bug: 74038898
Change-Id: I8296220472a9ba37044dd1a5ede9bdb45d3ed339
Fixes: 74038898
Test: runtest frameworks-net, CTS tests pass
Merged-In: I1e4e283c6eaecf33d12488e41e0c524f6ff83954
Merged-In: Ia84d2c7cc63bf8b8bf30f133e0382fd7103bf490
(cherry-picked from aosp I4b39e7031416cb33b23d89aa36ff0f774eaa942f)
2018-03-30 12:18:23 +09:00
TreeHugger Robot
929ce0086a Merge "AppStandby exemption: sync requested by FG apps" into pi-dev 2018-03-30 01:26:35 +00:00
TreeHugger Robot
dedc5d7141 Merge "Return PERMISSION_DENIED instead of NPE when missing ActivityManager" into pi-dev 2018-03-30 01:26:27 +00:00
TreeHugger Robot
68256e09d9 Merge changes I3e542532,Id8f2147f into pi-dev
* changes:
  Update notification blocking documentation.
  Wait before computing contact affinity
2018-03-30 00:10:22 +00:00
Andrii Kulian
d9e2acba96 Don't finish activity on duplicate resume request
With ActivityLifecycler infrastructure duplicate resume situations
are limited to double-relaunch scenario and there shouldn't be any
incorrect resume requests. This means that there shouldn't be any
reasons to finish activity when trying to resume it.

Bug: 77240441
Test: android.app.activity.ActivityThreadTest
Change-Id: I70a3fcbff72954ff673b2020be3134be367cd823
2018-03-29 17:00:05 -07:00
Erik Wolsheimer
e21576fd28 Return PERMISSION_DENIED instead of NPE when missing ActivityManager
Bug: 75005160
Change-Id: I710c5ee9f3d679240bf708102ef508041d0a3122
2018-03-29 23:34:10 +00:00
TreeHugger Robot
04446f9f68 Merge "Allow PO to call setSystemSetting." into pi-dev 2018-03-29 22:24:25 +00:00
Makoto Onuki
75ad2496eb AppStandby exemption: sync requested by FG apps
Bug: 72443754
Fix: 72443754

Test: atest ${ANDROID_BUILD_TOP}/frameworks/base/services/tests/servicestests/src/com/android/server/content/SyncOperationTest.java
Test: Manual test with contacts sync:

Precondition: Put the contacts sync in RARE bucket.

adb shell dumpsys deviceidle tempwhitelist -r com.google.android.syncadapters.contacts
adb shell am make-uid-idle com.google.android.syncadapters.contacts
adb shell am set-standby-bucket com.google.android.syncadapters.contacts 40

Test 1: Toggle contacts sync from the Settings -> Account

- Make sure a sync happens.

Test 2: Mutate a contact on the WEB

- Sync is scheduled, but won't run because it has no network access.
- am set-standby-bucket com.google.android.syncadapters.contacts 30
- Sync run runs.

Test 3. adb shell requestsync -n ACCOUNT -t com.google -a com.android.contacts

- Sync is scheduled but won't run.

Test 4. adb shell requestsync -n ACCOUNT -t com.google -a com.android.contacts -f

- Sync is scheduled but it still won't run.

Test 5. adb shell requestsync -n ACCOUNT -t com.google -a com.android.contacts -F

- Sync now runs

Change-Id: I1eb972ed321d2a1a782ae23ccb806671926d3e6b
2018-03-29 14:53:02 -07:00
TreeHugger Robot
92006c1764 Merge "Add permission hint, update permission slice structure" into pi-dev 2018-03-29 21:29:07 +00:00
Julia Reynolds
8d2b053611 Update notification blocking documentation.
Change-Id: I3e5425321d127fbf11adfa1c4ac5bed53fc73e03
Fixes: 73750866
Test: make
2018-03-29 16:39:06 -04:00
yuemingw
c0281f10f5 Allow PO to call setSystemSetting.
As system setting is per user, we should allow PO to call it.

Bug: 77204777
Test: runtest -x services/tests/servicestests/src/
com/android/server/devicepolicy/DevicePolicyManagerTest.java

Change-Id: I84152fa04adb441955b48b676be6e792134b52c2
2018-03-29 20:23:52 +00:00
Rubin Xu
3a021b3762 Remove password blacklist API
Bug: 73750934
Test: compiles
Change-Id: I4a73ea47285b7d0be06f84d45a5166a6642c29cf
2018-03-29 20:36:51 +01:00
Jeff Sharkey
c8156c6a52 Merge "API for granting/revoking runtime permissions." into pi-dev 2018-03-29 15:14:34 +00:00
Eran Messeri
e5f9e833e5 Merge "DPM: API review for installKeyPair" into pi-dev 2018-03-29 15:00:30 +00:00
Eran Messeri
6169239b94 Utilize verbose KeyChain errors
As KeyChain reports detailed error codes about failure to generate keys
or attestation records for them, log these detailed errors and throw an
exception if the hardware does not support Device ID attestation.

Bug: 72642093
Bug: 73448533
Test: cts-tradefed run commandAndExit  cts-dev -s 127.0.0.1:50487 -a x86_64 -m CtsDevicePolicyManagerTestCases -t com.android.cts.devicepolicy.DeviceOwnerTest#testKeyManagement -l DEBUG
Change-Id: Ib12efcf48c158373e1fc28cc51d67e70282d029e
2018-03-29 10:58:20 +01:00
Eran Messeri
f15d4f4dc5 DPM: API review for installKeyPair
Per API council review, make installKeyPair take a single, integer flags
argument rather than two boolean ones.

Bug: 71818124
Test: cts-tradefed run commandAndExit cts-dev -a armeabi-v7a -m CtsDevicePolicyManagerTestCases -t com.android.cts.devicepolicy.DeviceOwnerTest#testKeyManagement -l DEBUG
Change-Id: Ia04f8d617ae0d1db028bd9bcef3a4bf486449468
2018-03-29 10:14:25 +01:00
Benjamin Franz
3a5dabbb10 Merge "Update to lock task features API" into pi-dev 2018-03-29 09:02:17 +00:00
Eric Sandness
78931a0f95 Merge "Permission Check For DPM Get IME API" into pi-dev 2018-03-29 08:25:09 +00:00
TreeHugger Robot
50c069e489 Merge "Fallback to ML prediction after short ACTIVE states" into pi-dev 2018-03-29 06:03:17 +00:00
TreeHugger Robot
37594c892d Merge "Add slice pinning to list of reasons for usage" into pi-dev 2018-03-29 05:51:24 +00:00
TreeHugger Robot
cfa0f19fa1 Merge "Properly filter alert window notifications" into pi-dev 2018-03-29 03:50:31 +00:00
Mady Mellor
33c5a84707 Add permission hint, update permission slice structure
Test: atest cts/tests/tests/slices
Bug: 75500766
Change-Id: Ic26dbaa121a3745174a6e21171f35abad69c61de
2018-03-28 17:41:26 -07:00
TreeHugger Robot
822dfea6ca Merge "Fix keywords hint and add some hints and a subtype to Slice" into pi-dev 2018-03-28 23:59:37 +00:00
TreeHugger Robot
631f55ba54 Merge "Change MeteredDataDisabled function names for clarity" into pi-dev 2018-03-28 23:18:01 +00:00
Joshua Baxter
9a2d959eff Merge "docs: fixed a couple of typos" into oc-mr1-dev
am: 651ffd426c

Change-Id: Ie6fb97aae76637023657d751f6ad0ebbc74ff284
2018-03-28 22:06:24 +00:00
TreeHugger Robot
362b3522d1 Merge "fix SliceMetrics typo and disambiguate logTouch" into pi-dev 2018-03-28 21:18:33 +00:00
TreeHugger Robot
88f8de612d Merge "Add autobackup XML support for test BackupTransport flag" into pi-dev 2018-03-28 21:10:54 +00:00
Amith Yamasani
3154dcf94a Fallback to ML prediction after short ACTIVE states
When an app is temporarily elevated to ACTIVE state for some
reason, keep track of the last predicted bucket and drop back
to that if the ACTIVE state ends.

Also keep track of prediction during a forced ACTIVE state, even
if it's not applied right away.

Bug: 77158823
Test: atest AppStandbyControllerTests
Change-Id: Ic6de6c24bb25c5392ac5b41a2c05889d94f23436
2018-03-28 13:49:21 -07:00
Julia Reynolds
3c7de110cc Properly filter alert window notifications
Test: atest SystemUITests
Change-Id: Ie07ffeb7a96469d985261c9a1edb1d7ce82af5c5
Fixes: 77162311
2018-03-28 16:41:01 -04:00
Vishwath Mohan
86ed912f5a Merge "Refactor FingerprintDialog to BiometricDialog" into pi-dev 2018-03-28 18:46:34 +00:00