PacProxyInstaller class is running a thread all the time and is
listening to intent ACTION_PAC_REFRESH so it would be better to
make it be a system service with a manager class PacProxyManager
which is obtained with getSystemService(PacProxyManager.class).
Besides, rename PacProxyInstaller to PacProxyService will
be easier to know it's the service for PacProxyManager.
ConnectivityService is going to be a mainline module and it
needs constructor of PacProxyService to be SystemApi.
However, in current design, it needs to pass a handler and
an int arguments to the constructor which would be difficult
to maintain if just expose the constructor directly.
So, define a listener for the event that the current PAC
proxy has been installed so that the handler and the int
arguments can be removed from the constructor.
Bug: 177035719
Test: FrameworksNetTests
Change-Id: I2abff75ec59a17628ef006aad348c53fadbed076
Replace all constants and methods to reference the newly added
PowerExemptionManager.
Also keep Context#POWER_EXEMPTION_SERVICE hidden to discourage use of
getSystemService(String). It is still a TestApi for CTS purposes.
Bug: 180503057
Test: atest PowerExemptionManager
Test: atest PowerWhitelistManager
Change-Id: I52c24b79acf7a9ec9fce138d4cb0818b5480e2a0
DnsManager will broadcast ACTION_CLEAR_DNS_CACHE intent to clear
dns cache when network have changed. But DnsManager is in the
Connectivity mainline module which can not use non-formal API.
Thus, expose Intent#ACTION_CLEAR_DNS_CACHE as module lib API for
mainline module.
Bug: 182370679
Test: m update-api
Merged-In: I30b1b146dcae82926be7bdb8b343635a01eabefe
Change-Id: I30b1b146dcae82926be7bdb8b343635a01eabefe
Create a new intent for launching the unused apps UI page from
outside permission controller module.
Bug: 181172051
Test: Built successfully
Change-Id: I3f601425659a88f20683c0a1b1ab318f2b4e5ecf
With the getUserState public API, the constant should also be exposed
so that apps that wish to use that mechanism can access it.
Bug: 180955393
Test: builds
Change-Id: I98aa9a63eefc0480ddbf3107b91f76f0a2791f6b
This CL adds support for subattribution when sendBroadcast(Intent,
String) is used with an appop permission. This adds the new
android:attributionTag attribute to manifest receivers.
Fixes: 182313296
Test: atest AttributionTest
Change-Id: Ib315f95678204bc03e7ac354c54afbd64db403e8
DnsManager will broadcast ACTION_CLEAR_DNS_CACHE intent to clear
dns cache when network have changed. But DnsManager is in the
Connectivity mainline module which can not use non-formal API.
Thus, expose Intent#ACTION_CLEAR_DNS_CACHE as module lib API for
mainline module.
Bug: 182370679
Test: m update-api
Change-Id: I30b1b146dcae82926be7bdb8b343635a01eabefe
This is essentially identical to PowerWhitelistManager which will be
deprecated due to the use of non-inclusive language.
Bug: 180503057
Test: atest PowerExemptionTest
BYPASS_INCLUSIVE_LANGUAGE_REASON=Existing public API.
Change-Id: Ie6ff50118330e22b59a547c81952a31a5f5b54d8
With this change, text classification is performed on text in clip
data when it is set as the primary clip, if it is below a certain
length.
This allows information about which entities (e.g. URLs, addresses)
are present in the text to be added to the ClipDescription.
With toast notifications being added when an app accesses clipboard,
this change will allow apps to tell if clipboard contains information
they are interested in before they access the clip data. This will
allow unnecessary clipboard accesses to be avoided.
If entities are detected in the clip data, the results of classification
are added to the ClipData so that users of this API do not then need
to repeat text classification themselves in order to locate the
entities.
Bug: 180577441
Test: new CTS tests added to ClipDescriptionTest
Change-Id: I334db4805b8b72e0e00c721fe6efe64ec0661a8a
We're defining a new compat framework change id that indicates whether a
given app should be force non-resizable.
Bug: 181136395
Test: atest WmTests:SizeCompatTests
Change-Id: Ibd91bc8fe3da57f17e32fa8efaf98c51fe4dd677
Also, adds it to the test api for the Cts tests.
Bug: 153657222
Test: atest android.appenumeration.cts.AppEnumerationTests
Test: atest android.content.ContentResolverTest
Test: atest SyncAdapterSettingsHostSideTest
Change-Id: I9ac62a80c29351f05725c1636c52928b279840a0
On Android TV applications that target pre-S SDK are not expecting to
receive a Window larger than 1080p.
To avoid this from happening this CL overrides compatibility scaling for
applications that target a pre-S SDK on ATV devices that have larger than
1080p screen, so that the applications would still need to draw to a
1080p Surface.
Bug: 157629738
Test: atest CtsWindowManagerDeviceTestCases:TvMaxWindowSizeTests
Change-Id: I2b240bb5fcae6b165fd17c982cc29c49de348dbf
Adding a new activity launch mode `singleInstancePerTask` which
is similar to singleTask that the activity is single instance and
can only be created in task root, but still allowed to be created
in multiple documents or tasks.
Also adding meta-data support of apps that targeting on previous SDK.
Bug: 175354896
Test: IntentTests
Change-Id: I4ba3b2ba6d619677f03e67d3b7da1b5d2a79907f
Now the API if finalized, we can make it fully public.
Bug: 181708338
Test: atest PackageManagerShellCommandTest PackageManagerShellCommandIncrementalTest IncrementalServiceTest PackageManagerServiceTest ChecksumsTest
Change-Id: I2f8ec774ee8f19a1925414337e5fe8c875a6774e
Since this parameters object is likely going to grow over time, we
should offer a way for callers to easily "inherit" all sub-parameters
by default, instead of making them copy the values manually.
This also gives a path for legacy apps to automatically preserve any
new sub-parameters that have been added in more modern API levels.
This change also relaxes the nullability annotations to match the
existing createAttributionContext() behavior, while also supporting
clearing of specific inherited values.
Bug: 181812281
Test: atest CtsContentTestCases:android.content.cts.ContextTest
Change-Id: Ic797e1aef578926b04ea0000ca3a1bf8684183b9
The nullability annotations on these methods are aspirational,
and a recent CL started routing many existing call-sites through
them, so we'll need to start allowing nulls. I'm not at a full
workstation right now, so this CL simply relaxes the enforcement,
and a future CL will adjust the API annotations.
Bug: 182091763
Change-Id: I43d49747deb8c7881d942eba48237eb0fccc7acd
Merged-In: I43d49747deb8c7881d942eba48237eb0fccc7acd
This adds a system API to allow the source package to be included
when clip data is set on CLipboardManager.
This is needed to ensure that the clipboard access notifications can be
properly attributed. For example, when a copy is performed through the
share sheet, the data should be attributed to the app that opened the
share sheet, not Android System.
Bug: 180577866
Test: new tests added to ClipboardManagerTest in CTS
Change-Id: Ic0ef2ea218e1dcb738b401f61cd20cd5bba6baec
Migrate wellbeing to use the role infrastructure. Based on ag/13357357.
Bug: 158878560
Test: atest com.google.android.wellbeing.gts.WellbeingTest
Test: atest CtsPermission2TestCases:PermissionPolicyTest
Test: atest FrameworksServicesTests:AppStandbyControllerTests
Change-Id: I0a6c986fe9a53be52013f300ba7795dfdd0887e6
Different logical components within an app may have no intention of
interacting with data or services that are protected by specific
permissions.
The new overload added in this change provides the initial mechanism
for a logical component to indicate a set of permissions that should
be treated as "renounced". Interactions performed through the
returned Context will ideally be treated as if the renounced
permissions have not actually been granted to the application,
regardless of their actual grant status.
This is a low-risk change from a security standpoint, since it can
only reduce the set of permissions that might have been granted to
an app; it can never be used to expand the set of permissions.
Note that this change only provides an initial implementation which
only applies to local permission checks within the app; future
changes will begin wiring this up across process boundaries.
Bug: 181812281
Test: atest CtsContentTestCases:android.content.cts.ContextTest
Change-Id: I96439e5344c85300fb6a0f03e572746c3c96ee95