This is needed by system apps other than Settings, such as
PackageInstaller/PermissionController
Bug: 113128828
Test: CTS
Change-Id: I97cc9f90bb0978ce50ba0c10fcdd1b984028577c
Everything in the system should now be using proper multinetwork
APIs instead of this insecure and error-prone API.
Make this method do nothing when called by the system. For now,
keep the code around for backwards compatibility for apps
targeting Android releases before M.
Bug: 25824776
Bug: 25876485
Test: FrameworksNetTests pass
Test: CtsNetTestCasesLegacyApi22 pass
Test: CtsNetTestCasesLegacyPermission22 pass
Test: android.net.cts.ConnectivityManagerTest passes
Change-Id: I9b3557faccccc95c7b954db6a13b853b4c7edea0
These are either already exposed on other specialized collection variants or are exposed as public API on the androidx versions, or both.
With these APIs exposed, all of the unsupported app usage can be done through public API. As a result, all unsupported app usage is now locked to apps targeting API 28 or earlier.
Bug: 116877302
Test: none, no implementation change
Change-Id: I548d71319bffb0a6b529e380ea936df674dbf515
Standard fs-verity does not allow skipping part of the file. Let's call
the original version for APK "apk-verity" for now.
Test: atest PtsApkVerityTestCases
Bug: 112037636
Change-Id: I11264d5959b034fe373802c53d08f329fa926e58
Bug: 68489306
If we use a drawable like ColorDrawable for an ImageView it has intrinsicWidth and intrinsicHeight == -1.
1) Simplified matrix calculation in ChangeImageTransform.captureValues. It makes no sense to return null as a matrix because later in createAnimator it will be considered as the identity matrix. For cases when drawableSize == -1 instead we can just use view.getImageMatrix() which would be the identity matrix.
2) There is an additional check in createAnimator() to start an empty animation if the drawable width or height is 0. But actually it worth to use it also for cases when width or height is -1, as if it goes into else branch matrix transformations will try to incorrectly change the bounds of the drawable to (0, 0, -1, -1).
3) And also actually there is a bug in createNullAnimator() method, we can't provide nulls as values for ObjectAnimator.ofObject, as later it will crash on PropertyValuesHolder.setObjectValues(Object... values) because of "values[0].getClass()". So I changed it to provide some nonnull values like Matrix.IDENTITY_MATRIX. It is not important what to provide here as NULL_MATRIX_EVALUATOR will not use the values anyway.
4) Also I found a bug in ImageView.animateTransform(). If we provide null matrix if will try to update the drawable bounds to the view size but will not take into account paddings(in the same way like configureBounds()).
Test: Tested manually on the sample app from the bug and added new tests for both cases: with view bounds change and without it
Change-Id: I0750de56f4a011e06b340ed342884b59896d92dc
This CL allows the application's manifest to specify whether
to use ANGLE or native drivers for GLES via meta-data.
To enable, place the following within <application> and it
will be detected by the platform:
<meta-data
android:name:"com.android.angle.GLES_MODE"
android:value:"angle" />
The manifest can also specify "native" to opt-out of
ANGLE, but native will be the default for Q release.
This method is in service of the tech preview of
ANGLE for Android. For Q release, we should move this
to the Android API.
Test: Manual, verify ANGLE can be selected or rejected
Change-Id: I41af7fe02ca6237db042b5f8bdfbab3c9f76078a
(cherry picked from commit a2e5faf4b23bf0b8b84ffc1d67d545e3dd4f8c63)
In order to facilitate ANGLE selection logic in the backend, we need to
start sending more information from GraphicsEnvironment. This includes
the application name, whether the developer opted in, and the list can
be expanded. We also have to send the ANGLE namespace unconditionally
in case the application opts in programmatically.
Bug: 80239516
Test: Manual build, booted clean, ensured developer opt-in still works.
Change-Id: I3b8f99942999de6a3188d2e61355dcd244f9191e
(cherry picked from commit 261dfbd814bf62caaee11e6ebe4e2e61e28f4919)
This commit does the following:
* Create a new Android Setting for use during development,
"angle_enabled_app", which can be used to load ANGLE
only for specified applications.
Usage:
adb shell settings put global angle_enabled_app <package-name>
* When the package name condition is met, build a namespace
that points to the ANGLE APK. The namespace will be used
by the EGL Loader to find ANGLE libs.
* The APK may be the pre-installed version in /system/app/ANGLE,
or it may be an updated version from the Play Store, which will
reside somewhere under /data/app/*.
Test: Manual
Change-Id: Ia0475cf80cf5c2589e52fdb3c8f3672696357923
Set InputMethod.updateInputMethodDisplay as default method for fixing API
check.
Since this method is @hide & we don't want to enforece user to implement.
Bug: 116662257
Bug: 111364446
Test: atest CtsApacheHttpLegacy27ApiSignatureTestCases:SignatureTest#testSignature
Change-Id: Ifb136d86d19bc4f95154a9076d42326ce12f665f
- Also update vold to create sandboxes for secondary storage devices.
- Since bind mounts are created in the process specific namespaces, we
don't need /mnt/storage anymore which we were using it to prevent
some bind mounts from propagating onto /mnt/runtime/write.
- Create bind mounts for {media,obb} dirs similar to data dir in
per process namespace.
- Also fix a bug where we are not passing correct packages to vold when
a new user starts.
Bug: 111890351
Test: manual
Change-Id: I1abbafabc58993860305e5a928c980420f89f289
Bug: 102591313
Test: Compared settings in light & dark UI modes with
force_dark set to true. Observed that force_dark fixes
were not present when UI mode was set to dark, indicating
force_dark was appropriately globally-disabled
Change-Id: I5882829bb5871829fc8fc9911682f52a6ba5f445