Whenever a package's app ID has changed, the system broadcasts should
behave as if the package is fully uninstalled and then re-installed
subsequently. Additional extras are added to indicate the app ID change
to allow components to handle this case specifically.
Test: atest SharedUserMigrationTest#testDataMigration
Bug: 179284822
Change-Id: Ie00eaed1f0a704876ea76aa0e5ae2a1b21f199df
The initial selection toolbar related architecture. Render service
part and the implementation will be revised in the follow up changes.
Bug: 190030331
Bug: 205822301
Test: manual. Can boot to home and get manager successfully.
Ignore-AOSP-First: new file for T
Change-Id: Iab5d5f2e5e48e6258a63fb0c479194c958ea61e8
Modified myAttributionSource() to check for global AS for
process in ActivityThread and fallback to building new AS
with PackageManager#getPackageForUid(myUid()) if null.
Tag: #feature
Bug: 210467846
Bug: 210468546
Test: build
Change-Id: I7aa75395469bf0bb806100420faaf98c52057355
CTS-Coverage-Bug: 210906055
This reverts commit a822ccd755.
Reason for revert: Broke a shell-transition CTS test (b/210902428)
Change-Id: I479a6152f94cc6aff30caa8f49932c53d420db1e
Migrate the following unsafe parcel APIs in framework-minus-apex:
* Parcel.readSerializable()
* Parcel.readArrayList()
* Parcel.readList()
* Parcel.readParcelable()
* Parcel.readParcelableList()
* Parcel.readSparseArray()
This CL was generated by applying lint fixes that infer the expected
type from the caller code and provide that as the type parameter
(ag/16365240).
A few observations:
* In some classes we couldn't migrate because the class also belonged to
another build module whose min SDK wasn't current (as is the case for
framework-minus-apex), hence I suppressed the lint check
(since I'll eventually submit the lint check to the tree).
* In some cases, I needed to do the cast in
https://stackoverflow.com/a/1080525/5765705 to make the compiler happy
since there isn't another way of providing a class of type
Class<MyClassWithGenerics<T>>.
* In the readSerializable() case, the new API also requires the class
loader, that was inferred to by InferredClass.class.getClassLoader().
* Note that automatic formatting and import rely on running hooked up
to the IDE, which wasn't the case here.
Bug: 195622897
Test: TH passes
Change-Id: I11a27b9bdab7959ee86e90aa1e1cbebd7aaf883c
mPendingResult is not guaranteed to have been initialized at this point.
Test: Manual.
Bug: 210266601
Change-Id: I84287a068d03dd3aac2b046d1b8fdd8e6e52803f
* changes:
Support per-process Application class (AM and client side)
Support per-process Application class (package parser)
Support per-process Application class in <process> tag
It isn't enough to only dump the theme id and name because there is
no whole theme inheritance map. Developers need the map to figure out
why the attribute value is so strange.
A theme is a kind of style. This patch creates an API to retrieve the
parent id for any style. And, it dumps the whole inheritance between
themes until it can't find the parent style.
Test: manual test described in b/209708201#comment5
Bug: 209708201
Change-Id: I9de0e6e9aaeff7cb9fc89dc9b8a04925e84f975c
Now the <process> tag supports `android:name`, which takes a custom
Application class name. If omitted, the system defaults to the
class set in the <application> tag, or the default class which is
`android.app.Application`.
Bug: 197264681
Test: atest CtsProcessTest
Test: atest PackageManagerServiceUnitTests
Change-Id: Iaf336cc34fe950c4b3d8887de557857f8c23dc83
Include a new field in ShortcutInfo which serves as an indication of
whether a shortcut is exlucded from launcher. Shortcut marked as
excluded from launcher will not be included in the search result in
LauncherApps nor ShortcutManager. This generally means the shortcut
would not be displayed by a launcher app (e.g. Long-Press menu), while
remain visible in other surfaces such as assistant or
on-device-intelligence.
- setDynamicShortcuts/addDynamicShortcuts/pushDynamicShortcuts:
Shortcuts that are marked as hidden from launcher are ignored.
- updateShortcuts:
Similar to enabled/long-lived, developers cannot make shortcut hidden
from launcher by calling this api. An exception would be thrown when
updating a shortcut that is hidden from launcher.
- remove APIs:
Unchanged.
- reportShortcutUsed:
Unchanged.
- applyRestore:
Unchanged.
- disableShortcuts/enableShortcuts
Unchanged.
- requestPinShortcuts:
A shortcut cannot be pinned by launcher if it's hidden from launcher. An
exception would be thrown upon requesting to pin a shortcut that is
hidden from launcher.
Bug: 202335257
Test: manual enable feature flag for appsearch integration,
then run atest ShortcutManagerTest1
Change-Id: Ia0e5d31549c9d83efac9bc2a7ea894df425fd5cd
* changes:
Plumb support for rendering A8 in Vulkan
Plumb through A8 for GL/EGL
Add COLOR_MODE_A8/ColorMode::A8
Treat AHARDWAREBUFFER_FORMAT_R8_UNORM as kAlpha_8_SkAlphaType
This adds a created timestamp to ApplicationInfo so that when an
instance is passed in to getPackageInfo() we can determine whether or
not we should update the cached version
Bug: 188059515
Test: Installed locally to verify behavior and appropriate log messages
Change-Id: Ie87781a9272ee89c5333f56d28da8c1d88feb78b
When an application defines themes that are not inherited from
android:style/Theme, it may cause UnsupportedOperationException.
The cause is that the attributes needed by the application are
defined in neither theme nor layout attribute set.
It takes really a long time to trace all of the themes applied.
This patch logs the basic information about themes to help the
developers to triage issues.
Test: manual test described in b/209708201#comment3
Bug: 209708201
Change-Id: I440aa18d9627adf5e35fd74d7adb1c895f0b169d
Design: go/communal-manager-api.
Note: this CL also removed "_MANAGER" from the communal service
constant, and "_manager" from the communal service name. When these
became unhidden, ApiLint.kt suggested the changes.
- http://cs/android/tools/metalava/src/main/java/com/android/tools/metalava/ApiLint.kt;l=2369-2386;rcl=0ef26a465a89c45fcfd24d648883208cd0161fd2
Ignore-AOSP-First: tied to launch of new upcoming hardware.
Test: atest CtsAppTestCases:CommunalManagerTest
Test: atest FrameworksMockingServicesTests:CommunalManagerServiceTest
Bug: 206054365
Change-Id: I6d225d6ddb482d9cffb16d1f9a25a98abd0cc382
New field indicates if ActivityRecord#providesMaxBounds has
calculated that sandboxing of max bounds to match app bounds
should be applied.
Test: manual
Bug: 193514437
Change-Id: I91587ce1e1ded7435038e2d1a7d038be57ff0f2f
This change introduces a new <apex-system-service> tag to the manifest.
A manifest may have multiple <apex-system-service> tags, with each tag
denoting one system service that lives in an apex. If the service is
not in SYSTEMSERVERCLASSPATH, the android:path attribute may be used to
indicate where the jar is located on the filesystem. The minSdkVersion
and maxSdkVersion attributes may be used to indicate which SDKs the
service should start on.
Test: atest PackageParserTest
Bug: 192880996
Change-Id: I28e595b397ed8db6c412f490f12c73537972efab