The Usage Reporting Api allows apps to report usage within the app to
platform. Apps with the the OBSERVE_APP_USAGE permission may register
observers that use the reported in-app usage.
Test: manual (using the included Usage Reporter App)
Test: atest CtsUsageStatsTestCases:UsageReportingTest
Test: atest FrameworksServicesTests:AppTimeLimitControllerTests
Bug: 112486938
Change-Id: Iddd6f0993bbbf68a2032b34d473ef8d67da7747a
This change is required to show the signal level associated with service
name on UI for installed passpoint profile as picking strongest one up
from matching scanResults.
In order to get a map that consists of WifiConfiguration and a list of
ScanResults, three steps are required.
1) Gets a map that consists of FQDN(Fully Qualified Domain Name) of
a matching Passpoint profile and a list of ScanResults.
2) Gets a list of WifiConfigurations for Passpoint profiles matched a
provided list of FQDN.
3) Creates a new map that consists of WifiConfiguration and a list of
ScanResult.
Bug: 119514793
Test: ./frameworks/base/wifi/tests/runtests.sh
Test: tested with R1 AP for installing profile and R2 AP for connection
Change-Id: I0d56dbdddae4e365b909b9c8f3eff3b0121dc5de
Signed-off-by: Ecco Park <eccopark@google.com>
According to Android API council we shouldn't add a new semantic-action
flag to mark an action as contextual. Instead we should use a boolean
flag.
This CL adds that boolean flag.
Bug: 120842160
Test: build and run Notify app (in
vendor/google_experimental/users/cinek/), and ensure smart actions are
showing when the 'No Smart Actions' chooser is changed to
'Short Smart Actions'.
Change-Id: I5fc6dfa37ab28e3f29529cb6fda99c049783eb80
The frequency will be used for fast group connection and Wifi p2p metrics.
Bug: 119998319
Test: manuall test
* check this value in metrics dump
Change-Id: I5e153d3b022b2d27ddabf5f0fb43f499aeec924a
Entries from DownloadProvider are added to MediaStore Downloads
collection. COLUMN_MEDIASTORE_URI will be used to track corresponding
entries in MediaProvider. We can't re-use COLUMN_MEDIAPROVIDER_URI
for this purpose because it is updateable by apps.
Bug: 120876251
Test: atest DownloadProviderTests
Test: atest cts/tests/app/src/android/app/cts/DownloadManagerTest.java
Test: atest MediaProviderTests
Test: atest cts/tests/tests/provider/src/android/provider/cts/MediaStore*
Change-Id: Ifd252c54f4ee739a31be2866896efac6696a088e
The new isolated storage model we're building in Q introduces new
strongly-typed media permissions which replace the broad "Storage"
runtime permission.
That legacy "Storage" permission is marked as being "removed", and
it also splits into the new media permissions, but apps are confused
when they request the "Storage" permission, which no longer appears
as granted when the user accepts the new split media permissions.
After discussing with the permissions team, the best short-term
solution is to add special-case logic that grants the legacy
permissions when *any* of the new media permissions have also been
granted. Only when the user revokes *all* of the new media
permissions is the legacy permission then revoked. (MediaProvider
is already internally filtering the relevant content based on what
new media permissions the caller holds.)
Bug: 121227859
Test: manual
Change-Id: Ic87f7f93a816e91f7189509386255a260378c255
The "delete" operation is immediate and permanent, and users may wish
to instead mark content as being "trashed", so they can recover
accidentally trashed items before they're permanently deleted.
The default trash timeout is 48 hours, which should be enough time
to recover items the user cares about. Apps can also use a custom
timeout if desired.
This is implemented by recording an "expiration" time for trashed
items, and deleting expired items during the next idle maintenance
pass. Also use this expiration time to clean up pending items that
haven't been published; by default apps have a day to publish
pending items.
Bug: 121227045
Test: atest MediaProviderTests
Test: atest cts/tests/tests/provider/src/android/provider/cts/MediaStore*
Change-Id: I2e371b308dc135ad5363709a6f5385e4456bcb96
The manifest permission usage info declarations are limited in what they
allow the applications to specify. Applications can have an activity for
that handles this intent in order to provide free form application
specific details such as privacy policies, specific examples, etc.
Test: API definition, usage will follow
Bug: 111207567
Change-Id: I90b292e4c1cb8847a9a9d7b8071aaff2ee7d11fb
The existing buckets work well for first-level clustering of related
media, but it's common for multiple media items within a directory
to form a conceptual unit. To support this, we're creating a
second-level of bucketing which is formed using the first part of
the file name.
This supports common industry-standard patterns like:
IMG1024.JPG
IMG1024.CR2
While also opening the door to further flexibility in the future:
IMG1024.JPG
IMG1024.HDR.JPG
IMG1024.BURST001.JPG
IMG1024.BURST002.JPG
IMG1024.BURST003.JPG
IMG1024.DNG
IMG1024.DEBUG.BIN
We're currently advocating that the default representation of one of
these secondary clusters is the shortest .JPG filename contained
inside, with length ties broken alphabetically.
Clean up database management so that upgraded schema always matches
pristine schema, with tests to verify. Generate views using the
actual projection mappings used at runtime.
Bug: 115377970
Test: atest MediaProviderTests
Test: atest cts/tests/tests/provider/src/android/provider/cts/MediaStore*
Change-Id: Ic679055ab6c884d2048626f51670a5dd370281c0
Error code 51 is given when trying to downgrade a device, so this is
required to fix our broken CTS test and give an accurate error code to
the admin.
Change-Id: I436fb7a605dc47dc5388c78c67d7db08ffcf867a
Fixes: 120896091
Test: atest CtsDevicePolicyManagerTestCases:com.android.cts.devicepolicy.DeviceOwnerTest#testInstallUpdate
* changes:
Add test for multi-package rollback.
Fix bug where RollbackManagerService ignores package name.
Add test for user data rollback.
Move rollback manager implementation to RollbackManagerServiceImpl
Don't expose RollbackManagerService's internal Handler.
Make RollbackManager @SystemApi.
This reverts commit e521669b5d.
Reason for revert: Another CL will be uploaded which makes the APIs public, not @SystemApi.
Bug: 122169124
Change-Id: Ie9ed1067596fe1724879e81d768ac8252eda7841
This reverts commit 8eee83e594.
Reason for revert: Another CL will be uploaded which makes the APIs public, not @SystemApi.
Bug: 121239657
Change-Id: I0537ffd487ab6889213b8917615156caaec17eb5
As this has already evolved from just presenting data. In the future any
permission related calls to the permission controller will be added here.
As the calls are protected by different permissions the binding will not
require a permission anymore, but each individual call checks the
permission.
Bug: 120221960
Test: Looked at settings UI showing data from this interface
Change-Id: I6b4a5c3b7ee17b145e11e2c1b6e11a8a232bffed
Add plumbing to native/webview for the new functor.
Add a void* data parameter to avoid having to use a thread safe
map for in both the plumbing and in webview.
Test: Compiles and webview runs
Bug: 120997728
Change-Id: I0f9f3acb05688a5afcf95974bc0b3b117f33a8e3
- Add an extra with onPlaceCall in the current CallRedirectionService
surface to indicate whether an interactive response is allowed or not
when call is initiated into the implemented redirection service.
- Add an extra with redirectCall to indicate if Telecom should show UI
to users to confirm the redirection.
- Rename targetPhoneAccount in onPlaceCall to initialPhoneAccount
Bug: 64959558
Test: Treehugger
Change-Id: Ic924bb234b2b2e5533c5869257e815777580ac5d
singleTaskInstance displays will only contain on task. This is mostly
used by ActivityView for use cases like bubbles.
Bug: 121047677
Test: atest ActivityManagerMultiDisplayTests#testSingleTaskInstanceDisplay
Change-Id: I5166015d8ecfa2845b4ffaa6c16d21a30a56b8a8
Augment dynamic audio policies with audio device affinity for
apps (a.k.a multi-zone handling), to enable associating apps
with a set of audio devices (which may form a "zone" in cars).
Bug: 111647296
Test: requires device with routing policy started by CarService
Change-Id: I2994ae80624556d9321f788a0575d9f732157228
Require callers hold a new MANAGE_ROLLBACKS permission to interact with
the RollbackManager.
Bug: 112431924
Test: atest RollbackTest, with new test for permissions added,
and with selinux in permissive mode.
Test: atest CtsPermission2TestCases:PermissionPolicyTest
Change-Id: I73f4f3457d85be580670cd69c89066d2cc348186