FLAG_RECEIVER_REGISTERED_ONLY_BEFORE_BOOT is used by wifi mainline
module, promoting to a @SystemApi.
Bug: 147374337
Test: Compiles
Change-Id: Ib822706700533c0b79833504dad5c8d5253d5d55
Add CrossProfileApps#canRequestInteractAcrossProfiles,
and CrossProfileApps#canInteractAcrossProfiles public APIs.
This provides apps the ability to check if they can interact across profiles,
or can they request that from the user if not.
BUG: 136249261
Test: in progress
Change-Id: Ifd561d5d5efcd167e24a5f05c22496d1fe9c81fc
Also, add RequiresPermission annotation for INTERACT_ACROSS_PROFILES
INTERACT_ACROSS_PROFILES should work as a replacement for INTERACT_ACROSS_USERS
for this API when binding to the caller package in some user of the same user
group as the caller, so we don't have to give privileged system components a
permission that is more powerful than is necessary.
BUG: 136249261
BUG: 138645036
Test: Build succeeds
Change-Id: I53c59ecc78a67ea9d324d60787d3b647b7251ea9
This is a part of two other features that will use this feature flag.
Bug: 146206136
Test: Compiled
Change-Id: Iae1f759ada8925a055f9dbddf2d480d9c2d7616c
wifi mainline module needs to use this constant to retrieve the wificond
binder service.
Bug: 140062898
Test: Compiles
Change-Id: If42df001d3c7fa7c743c1448a22697daf06c0d81
Adjust Exception to more general Throwable, and add docs for
new ContentResolver and ContentProvider overloads. Also add docs
for default state of strict query options.
Bug: 131598520, 141227540, 147287177
Test: atest --test-mapping packages/providers/MediaProvider
Change-Id: Icb0153b8c8a352db39de301074e948bfaa676ddb
The bulk of the work needed to get MediaProvider building against
the "system_current" SDK surface has been slowly merged over the
last few months, and this change makes the last few adjustments.
This adds a new StorageVolumeCallback which is simpler version of
StorageEventListener that simply delivers the changed StorageVolume.
Move DownloadManager logic into a onMediaStoreDownloadsDeleted()
method which hides the implementation details of how the OS connects
with that implementation.
Make local copies of some ExifInterface parsing logic; they could
be added to the androidx version in an unbundled release. Make a
local copy of RedactingFileDescriptor, since it's only needed for
the next few weeks until FUSE is globally enabled.
Bug: 137890034
Test: atest --test-mapping packages/providers/MediaProvider
Change-Id: Ib416eb8724781bdd234c8b7d728dee8b695ad6ac
Existing annotations in libcore/ and frameworks/ will deleted after the migration. This also means that any java library that compiles @UnsupportedAppUsage requires a direct dependency on "unsupportedappusage" java_library.
Bug: 145132366
Test: m && diff unsupportedappusage_index.csv \
git diff HEAD^ HEAD | grep '^[+-][^+-]' | grep -v '.import'
Change-Id: I853372f3c6fef905553bb31be4f1bb48df735f7a
Explain the conditions that must be true in order for two objects
of type `ComponentName` to be considered equal.
Test: make ds-docs -j32
Bug: 62991861
Change-Id: I162ecd825b187ca688af11271a937e3740a4a833
Exempt-From-Owner-Approval: Docs-only change
When an OTA is downloaded, the RecoverySystem can be triggered to store
the user's lock screen knowledge factor in a secure way using the
IRebootEscrow HAL. This will allow the credential encrypted (CE)
storage, keymaster credentials, and possibly others to be unlocked when
the device reboots after an OTA.
Bug: 63928581
Test: atest FrameworksServicesTests:RebootEscrowDataTest \
FrameworksServicesTests:LockSettingsServiceTests \
FrameworksServicesTests:RecoverySystemServiceTest \
FrameworksServicesTests:RebootEscrowManagerTests
Test: use fake OTA console app to apply update
Change-Id: I59df6942b27ea2bdd11b757922f5169085a325f0
An empty string is a valid value, and must be converted to null so
that the permission check is skipped.
Bug: 146596667
Test: manual verify failure using APK from bug, success after fix
Change-Id: Ia5cc915124a6ecb7ec6a9c907b5f2afed98cd44e
Test: CtsAppOpsTestCases (with newly added test for featureIds declared
in manifest)
Bug: 144997947
Change-Id: I5563ae6861318e4cc1d196e3f6aea378a4dcf748
So we don't need to call VersionedPackage#getPackageName and
VersionedPackage#getVersionCode to compare 2 VersionedPackages.
Note you must also override #hashCode whenever you override #equals.
Bug: 147028082
Test: atest StagedRollbackTest
Change-Id: Ib1fac7e0521e2ccde0c2bb1f3fd28c0a7cd70234
1. Don't snapshot user data when the policy is WIPE.
2. Add tests to verify user data is wiped/restored correctly.
Bug: 144683152
Test: atest RollbackStoreTest RollbackUnitTest AppDataRollbackHelperTest
Test: atest RollbackTest StagedRollbackTest
Change-Id: I470233080efbba724ace6f0dbf2ab5256db49054
This is to fix an issue when calling getUser for a context that
is different than the context of the current foreground user.
getUser for a ContextWrapper would call the base
class Context#getUser which returns the user of the current foreground
process rather than returning the user of the calling context.
Currently, this is a bug that does not meet the ContextWrapper class Javadoc.
It looks like the ContextWrapper call was missed in Ib772ec4438e57a2ad4950821b9432f9842998451.
Fix: 144024489
Test: called the API from a test App with a different context than the
current application context.
Change-Id: I58ec9fda24bf135ba8c648a905ef0c81d36ea098
Merged-In: I2d24f5141e8cbc2546c8dc5894a1aeab376b7632
(cherry-pick from ag/9673528)
Includes Context.NETWORK_POLICY_SERVICE into system API
so that system apps(including mainline modules) could
obtain the service.
Bug: 138306002
Test: FrameworksNetTests
FrameworksTelephonyTests
Change-Id: I3f751b14e55969952c69b33c97ef86d859cef8b5
This intent is used by Incremental's adb data loader which is a system
app. This means the intent needs to be a system API.
BUG: 146763909
Test: atest CtsIntentSignatureTestCases
Change-Id: Ibf23e3c28a771687bcd72abea9ae2639f99dff7f
The corresponding service is also added.
The API can be used by a store to know whether their certificate is
trusted on the device. As optimization, they only need to download
.fsv_sig signature file if it will be used.
The API can also be used to gradually switch to stronger key. The store
can query with their certificates in priority order and download the best
signature.
Test: Passed new GTS working in progress
Bug: 142573505
Change-Id: Ic788cd04aeaed35ad62113fe9e7535b8fa63b5ee
This API allows applications to instruct the connected display to do minimal
post processing on the produced image or video frames. This will switch the
display to a low latency mode (ALLM, Game mode or some other custom
implementation thereof), reducing lag in the final images. Thus, minimal post
processing would greatly enhance performance for gaming and video
conferencing applications. It would not, however, suit applications that
prioritise image quality over performance.
This CL adds 2 public method:
- Window.setPreferMinimalPostProcessing()
(this can also be set in WindowManager.LayoutParams.preferMinimalPostProcessing)
If minimal post processing is preferred, the connected display will be requested
to go into low latency mode, which reduces image processing, resulting in better
performance for gaming applications. If the Display sink is connected via HDMI,
the device will begin to send infoframes with Auto Low Latency Mode enabled and
Game Content Type. This will switch the connected display to a lower latency
mode (if available).
For more information, see HDMI 2.1 specification.
If the Display sink has an internal connection or uses some other protocol than
HDMI, effects may be similar but implementation-defined.
- Display.isMinimalPostProcessingPreferred()
Returns true if the connected display supports either Low Latency Mode (ALLM or
some other custom low latency implementation) or Game content type.
Bug: 135116095
Test: make -> flash on ATV OTT device -> open an activity which requests minimal
post processing -> check SurfaceControl logs -> verify correct signals are
passed to native
Change-Id: I5508bb9e5c138b0f2b42d8f8fab10e1915ba3cb6
Verifies the appropriate methods are called or not called
when onGetInstantAppResolveInfo and onGetInstantAppIntentFilter
are invoked and different API versions are implemented.
There are 5 versions tested, with version 0 meaning no API was
implemented.
Bug: 137962971
Test: atest FrameworksInstantAppResolverTests
Test: manual swapped platform implementation to log method calls
and verify call stack when under test
Change-Id: I66f84630d9824b74de57eaae71422d8773279a0f