Add default system implementation of vibrator manager service that uses
IVibratorManagerService to access the device vibrators.
Change implementation of SystemVibrator to use VibratorManagerService
and delete local service VibratorService.
Introduce missing public APIs for VibratorManager and Vibrator.getId.
Bug: 167946816
Test: VibratorManagerServiceTest, VibratorTest, VibrationEffectTest
Change-Id: I55cdeb72c7ca39ccf0c7b2fda60b16de1031801e
This commit adds support for a new permission protection flag that
allows a permission declaration to also include an array resource of
trusted signing certificate digests. A permission declared with this
new knownSigner permission flag will be granted to a requesting app
if that app's current signer, or any of the previous signers in its
lineage, are in the declared trusted signing certificate set.
Bug: 172970984
Test: atest SigningDetailsTest
Test: atest PkgInstallSignatureVerificationTest
Change-Id: I54ff2ac720c3a1828d0606426197f7f0e0d0d4b5
* changes:
[Mainline] android.system package APIs migration
Use public android.system.Int64Ref instead of Int32Ref which is hidden (CorePlatformApi) type of libcore
This is needed to enable the new testing infrastructure to
reinstall removed packages between test runs as part of state
resetting.
Bug: 179682115
Test: confirmed that cts tests can call the API
Change-Id: Idc093fb387694096b0bf81472dd71387d3c85e85
The values in dp shouldn't be changed because the density is
already scaled.
Also add unit tests to ensure that the override scale from
CompatModePackages applies to window and surface.
Bug: 168419799
Test: atest DisplayContentTeasts#testCompatOverrideScale
Change-Id: I4b99b123d4beb33cc3d97eb07e506d8a60fcc5e3
Adds registering and unregistering of FabricatedOverlay to the OMS.
The process that creates the fabricated overlays owns it and is the
only process allowed to unregister it.
When a fabricated overlay is registered, overlay settings for it are
initialized in all users. When a fabricated overlay is unregistered,
it is disabled and removed from all users. When a new user is created,
it will be able to use the fabricated overlay as well.
On boot, fabricated overlays that are not referenced in overlay
settings will be deleted.
When the package that created the fabricated overlay is uninstalled,
its fabricated overlays are also unregistered.
Bug: 172471315
Test: atest OverlayDeviceTests
Change-Id: I0539656f4c919246b13129579b0286c08a398dc2
Fabricated RROs identifiers are made using package name and overlay name
combinations. In the future, packages with multiple <overlay> tags will
use overlay name to distinguish between the tags.
This changes the OMS to manage overlays through OverlayIdentifiers.
The identifier is a overlay package and name combination. The name field
is optional so overlays without an overlay name can be managed.
This change simplifies the logic required to update the set of target
packages affected by overlay changes.
Bug: 172471315
Test: OverlayDeviceTests
Test: OverlayImpl tests
Change-Id: Iac679828d7480e5c7a2c1fe4ea8b73401d8d487f
Apps need a better way to check if their shortcut or
pending intent is bubbled, to do this we'll add an intent
extra on the bubbled activity that they may check.
- updated doc around bubbles for how to check the extra
- applied flag on activity for intent & shortcut
Bug: 171220648
Test: atest NotificationManagerTest (see CTS CL)
Change-Id: Iba97a0058e1e4fc33c4df32a3f258ff350ad04e2
RROs have historically been APK packages. We now have the ability to
generate RROs on-the-fly. These "fabricated" RROs are not APKs.
ApplicationInfo#resourceDirs documentation states that it only contains
paths to packages. To prevent changing the behavior of resourceDirs
until we can deprecate and remove it, a new overlayPaths field has been
added to ApplicationInfo. This new field contains APK overlay paths as
well as non-APK overlay paths.
Bug: 172471315
Test: boot enable/disable overlays and examine overlays working as well
as package manager dumpsys
Change-Id: I78c5eeef73b7d8bada61edc0f64a12a3cdc1ce16
Listener is more secure as nobody can send a broadcast with invalid
digests.
Bug: 160605420
Test: atest PackageManagerShellCommandTest PackageManagerShellCommandIncrementalTest IncrementalServiceTest PackageManagerServiceTest ChecksumsTest
Change-Id: I5f6ec3f0fa975d274d456d11d57be61d0b245e80
Completely deletes all the code for v1 of domain verification,
delegating everything to the new DomainVerificationService.
Exempt-From-Owner-Approval: Already approved by owners on main branch
Bug: 171251883
Test: none, removal of effectively dead code
Change-Id: Ib222ccd46019c1c28b402c0f68466077b62871c1
These legacy settings need to be migrated once to the new domain
verification API, so this pulls the parsing out of the legacy classes
into a DomainVerificationLegacySettings.
This does NOT handle serializing the legacy settings. It's assumed
that migration is a one-time best effort attempt, and that dropping
the legacy settings is an acceptable fallback.
The old setting was a result of an unexplained and unintuitive user
path, set through ResolverActivity, and so it's not clear whether we
should migrate at all.
Worst case, the user can always re-do their preferences.
NOTE: This change should only be merged if merged together with the
change that removes the legacy code. It's invalid to run these
separately, as this change breaks the legacy manager class. These are
only separate to make review easier, to separate their concerns.
Exempt-From-Owner-Approval: Already approved by owners on main branch
Bug: 171251883
Test: TODO
Change-Id: Iefde9f2cd8ab73cb5f592abc7d2163dd7d244789
Backporting the new per-domain state to the old v1 intent filter
verification agent API.
Uses a new STATE_LEGACY_FAILURE to track the failedDomains returned by
the v1 verification agent, to support per-domain state with the old API.
Exempt-From-Owner-Approval: Already approved by owners on main branch
Bug: 170321181
Test: TBD in later change when proxies are combined
Change-Id: I2953f7e0100d425dcb806c607fdeae101803d8f4
Implements the behavior of either delegating to an approved app for
a web domain, or the browsers, removing the "always ask" and "never"
options for applications.
This also considers cross profile intents, and will allow those to be
shown if the other profile has an approved handler.
This also migrates instant app state to the new behavior. Instant apps
will now be granted completely immutable autoVerify approval, to
preserve their automatic opening behavior. The user would have to
disable the app in settings similar to an auto approved system app.
This is flagged through USE_DOMAIN_VERIFICATION_V2. For now, both v1
and v2 run entirely parallel, until the v1 APIs are removed in a
follow up.
Exempt-From-Owner-Approval: Already approved by owners on main branch
Bug: 163564991
Test: TODO
Change-Id: I1a90f6b2b9bf2f108c5dc1b944985bc150c405a7
Support for mutating internal state using pm shell commands.
Also wires up the boot broadcast now that the ability to verify all
unverified packages has been added.
Exempt-From-Owner-Approval: Already approved by owners on main branch
Bug: 163565712
Test: TODO
Change-Id: I809436c6b8ff04cdc68430303859d2d7f40d9557
Contains the core SDK @SystemApi portion of the domain verification
APIs, including the state codes and get/set methods for package/user
state.
Set methods are gated by corresponding permissions, but get methods
were left available as general @SystemApi in case someone finds a use
case for them.
Adds a new exception which allows the manager to be more specific in
what caused a failure.
Exempt-From-Owner-Approval: Already approved by owners on main branch
Bug: 163565712
Test: none, just API interfaces, will be tested with implementation
Change-Id: I86802fe4b88a8a0f63a1798944c5d8c3a3bab09b
Includes the request class sent to the verification agent and the 2
data classes returned by the to-be-added DomainVerificationManager.
Exempt-From-Owner-Approval: Already approved by owners on main branch
Bug: 163565712
CTS-Coverage-Bug: 179382047
Test: atest DomainVerificationCoreApiTest
Change-Id: If9f1b987f0d06c930f6c44b58af101b83947acb9