This permission model is only allowed for BUGREPORT_MODE_TELEPHONY to
let carrier apps (even from the Play Store / not pre-loaded) access
BugreportManager to trigger connectivity bugreports.
This also requires SELinux policy changes to allow non-system apps to
get an instance through Context#getSystemService, and then dumpstate
also needs permissions to write public apps' files.
Minor documentation and formatting fixes as well.
BYPASS_INCLUSIVE_LANGUAGE_REASON=leaving variable name derived from
"bugreport-whitelisted" sysconfig alone for now
Bug: 161393541
Test: atest CtsCarrierApiTestCases:BugreportManagerTest
Change-Id: I5a38e7a040fa23146fa6c1e785db102b066ad167
Merged-In: I5a38e7a040fa23146fa6c1e785db102b066ad167
(cherry picked from commit 57fd3440be)
* changes:
OMS: add tests for the OMS transactional API
Push OverlayDeviceTests onto /system
OMS: add transactional API
OMS: block until settings are persisted
OMS: replace OMSImpl.OverlayChangeListener with return values
OverlayDeviceTests: add missing TEST_MAPPING
Per request from a partner, these APIs will not be restricted as they
are in use. This is conceptually a partial revert of change 5d123b6775.
NoNonSdkCheck: b/170729553
Bug: 171933273
Test: Treehugger
Change-Id: Ibb525e9a9e2fc90248b74f45f3cdcb0be7487c3a
Usage has been discovered by an app so reverting this to its previous
state. This is conceptually a partial revert of change 5d123b6775.
NoNonSdkCheck: b/170729553
Bug: 175981568
Test: m
Change-Id: I3e61d3f56f176d573f68ba85f3b1762686aa62ef
Usage has been discovered by an app so reverting this to its previous
state. This is conceptually a partial revert of change 5d123b6775.
NoNonSdkCheck: b/170729553
Bug: 176190631
Test: Treehugger
Change-Id: I35a853360231a17aa95c4816de308c85d040ad40
Implement a transactional API for the OMS. This allows a caller to batch
together individual operations, and apply those operations atomically:
either they all succeed (and notifications are sent out accordingly), or
some operation fails (and the transaction is cancelled, any internal
changes are rolled back, and no notifications are sent out).
As an added bonus, batching OMS operations result in fewer requests to
the system to refresh affected packages.
This commit adds support for transactions but leaves the old one-shot
API intact. The old API should be considered deprecated and will be
removed at some point in the future.
Note: the old API provided both setEnabled and setHighestPriority as
separate calls. In the transactional API, setEnabled implies
setHighestPriority.
Also, refactor the methods to broadcast ACTION_OVERLAY_CHANGED and to
reach out to the package and activity managers. The methods no longer
call each other: instead, it is up to the caller to explicitly invoke
each method.
Bug: 119916381
Test: builds
Change-Id: I63df58510efbc5f7a7d3146a122c3d6209e7478b
Delegate the resetting of the INTERACT_ACROSS_PROFILES app-op to
DevicePolicyManager, which knows whether it should be pre-granted and
knows to apply it equally across all users in the profile group.
Further unit tests for DevicePolicyManagerInternal will be added in
b/175440570 when we have the better infra for that.
The CrossProfileAppsServiceImpl changes look more complex than they are.
They consist of the following:
- Inclusive language changes to 'allowlist'
- Static imports of permissions to improve readability
- Previously, the setInteractAcrossProfilesAppOp method would set the
app-op for every user within the profile group of the 'calling user'.
However, given that we are now exposing this as a server-side internal
API where we need to pass in a user ID (from AppOpsService), we don't
necessarily have the guarantee that the 'calling user' is in the same
profile group. So we split it up: the client-side API and AIDL API still
set the app-op for the calling profile group, whereas the internal API
sets the app-op for every user within the profile group of the provided
user. The changes simply abstract away references to the 'calling user
ID'.
Fixes: 166561076
Bug: 175440570
Test: atest services/robotests/src/com/android/server/pm/CrossProfileAppsServiceImplRoboTest.java --verbose -c
Test: manual
Change-Id: I2181fe66022aaf6c3e6d784c0569d2f41ab66537
(cherry picked from commit d004f41188)
This change adds a feature flag that specifies the date associated
with the OpenGL ES dEQP tests that a device claims to pass.
Bug: 159842117
Merged-In: I830fbfcff617c891a42ca46396adf0283a52b874
Change-Id: I29dddc28c18933f4fa338a2aaa87d4c748deafa3
It helps remove it from the @CorePlatformApi
Bug: 154796679
Test: ArrayUtilsTest
Merged-In: I0c8f194a74a16b2cc46f9eea4571d5fb674fbc28
Change-Id: I0c8f194a74a16b2cc46f9eea4571d5fb674fbc28
In-process API only applies to code in frameworks/base/services
so that CS mainline can't use these APIs. Thus, update these
in-process APIs to system APIs to support CS mainline usage.
Bug: 170593746
Test: atest FrameworksNetTests
Change-Id: I4c7c1e71dcb6448aed0107768b4ba8eecd3e11f7