Should prevent accidental addition of APIs outside com.android,
which is where we want these APIs to be.
Bug: 149293194
Test: m update-api
Change-Id: I144ce6dbfe524106fc7de87318f66390c31b45af
Merged-In: I144ce6dbfe524106fc7de87318f66390c31b45af
- Don't declare the plugin directly, it is exported via java_library that defines the sources.
- Remove unneeded framework-annotation-proc.
Bug: 152220864
Test: m && diff merged_compat_config.xml
Change-Id: Ie750b5391229d21679a8610780b9f8d4a997e204
Merged-In: Ie750b5391229d21679a8610780b9f8d4a997e204
Makes these artifacts available for the update_prebuilts script.
Bug: 149293194
Test: m win_sdk dist && find out/dist -type f
Change-Id: Ia1064e50e987433e5e308527c6770ba2d3e8bde3
Merged-In: Ia1064e50e987433e5e308527c6770ba2d3e8bde3
(cherry picked from commit 7b0414beb7)
Include the module_api stubs in system_server one instead of
putting both of these jars on the classpath. Also rename it
to be in line with the other stubs.
Bug: 149293194
Test: m
Change-Id: I2a9318c8ae036edafac086687601fa73d9bf4678
Merged-In: I2a9318c8ae036edafac086687601fa73d9bf4678
(cherry picked from commit a49fb99d8c)
Add separate publicapi, systemapi and module_libs stubs for tethering.
Bug: 147768409
Test: m
Test: m framework-tethering-stubs-{public,system,module_libs_}api
Change-Id: I0ed44691b4e7080818442a9d0eb37d874f707195
Merged-In: I0ed44691b4e7080818442a9d0eb37d874f707195
It generally shouldn't be depended on. Only by droidstubs for
modules.
Bug: 137191822
Bug: 149906971
Test: m
Change-Id: I16e672aaae80d8bcce25e46c34984797740aae1b
Merged-In: I16e672aaae80d8bcce25e46c34984797740aae1b
(cherry picked from commit 6fb18bbfdb)
The android.* rule is meant to be for the public SDK.
Bug: 147559833
Test: m checkapi
Change-Id: I8b36cf7a4ff569d0b960455de09ed40592dd5a9e
Merged-In: I8b36cf7a4ff569d0b960455de09ed40592dd5a9e
(cherry picked from commit f74130f525)
These were previously turned off as there were no previous
releases to compare it to. Check in empty files as comparison.
Whitelist current lint problems for now (filed bugs to follow-up).
Bug: 149818061
Bug: 149818284
Bug: 147559833
Test: m checkapi
Change-Id: Ib4cbc84ac9a826f7b947c951c94f8f5578f4554d
Merged-In: Ib4cbc84ac9a826f7b947c951c94f8f5578f4554d
(cherry picked from commit daa9d88444)
The non-updatable part of the platform now is built with
framework-tethering-stub, which is a stub library of
framework-tethering.
Bug: 147200698
Test: m
Change-Id: I97ef83f7f9b4c1376f373713036f5256318f1050
Merged-In: I97ef83f7f9b4c1376f373713036f5256318f1050
This change fixes a bug that annotating a class in services.jar as
@SystemApi doesn't automatically make its member fields and methods as
@SystemApi. The problem was due to a wrong option to the metalava.
Bug: 147322525
Test: cherry-pick ag/10037363 and `m update-api`.
services/api/current.txt contains all the symbols from the
SystemService class.
Change-Id: I30a515761f8d1792593f207fa4e268ab68a81480
... so that they can be reviewed.
Bug: 140202860
Test: m
Exempt-From-Owner-Approval: cherry-pick from internal
Merged-In: Iec8cdd30ad5e4979d56140a8c00a85af6476f67f
(cherry picked from commit 13c923d00a)
Change-Id: Iec8cdd30ad5e4979d56140a8c00a85af6476f67f
* changes:
Hide com.android.server package with @hide javadoc tag
Add more enums for the client and process attributes of SystemApi
SystemApi is parameterized
Move tethering out of ConnectivityService. All client would
use TetheringManager to talk with TetheringService directly.
Bug: 144320246
Test: -build, flash, boot
-atest TetheringTests
Change-Id: Ib051bea724a256f9c4572b566e46ae7b9c4abe6e
Merged-In: Ib051bea724a256f9c4572b566e46ae7b9c4abe6e
For the client attribute, we have
- MODULE_APPS for representing APKs implementing modules which are
considered part of the platform
- MODULE_LIBRARIES for representing jars inside modules.
For the process attribute, we have
- SYSTEM_SERVER for representing the system_server process.
For example, @SystemApi(client=MODULE_LIBRARIES,process=ALL) actually
means that the API is meant to be available for classes in the
bootclasspath but not to the classes from the app classloader.
Bug: 140202860
Test: m
Exempt-From-Owner-Approval: cherry-picked from internal
Merged-In: Iba6a564a0967e4d109164849ee6d6500d46469de
(cherry picked from commit 88d5e494c4)
Change-Id: Iba6a564a0967e4d109164849ee6d6500d46469de
We have decided to reuse the existing annotation @SystemApi for all Java
APIs regardless of whether they are for apps or platform internal
modules. This was because introducing new annotation types every time
when we have to create new API surfaces will only increase the confusion
without giving much benefit.
Instead, to differenciate the different API surfaces of @SystemApi, the
annotation type is parameterized. Specifically, it has to axises.
client: specifies the intended client of the API.
process: specifies the process(es) that the API is available.
The default for client and process are priv-apps and all, respectively,
which corresponds to the today's @SystemApi for privileged apps like
GMS.
Exempt-From-Owner-Approval: cherry-pick from internal
Bug: 140202860
Test: m
Merged-In: I3305b71e22970e80db95f3daf3d7713603c7d68d
(cherry picked from commit 119afc0695)
Change-Id: I3305b71e22970e80db95f3daf3d7713603c7d68d
services-stubs is a stubs library for services.jar. It provides the
in-process APIs that's available inside the system server process
running services.jar.
Currently, all APIs in the jar are hidden by annotating
com.android.server package with @android.annotation.Hide. To add some
APIs,
1) remove package-info.java for com.android.server
2) add package-info.java for other sub packages
3) annotate them with @android.annotation.Hide except for the package
where the newly added APIs are in
This change also added android.annotation.Hide class which can be used
to hide an API without using the @hide javadoc tag. This opens up the
possibility of running metalava over the compiled jar, which is expected
to be much faster than when ran with source files.
Bug: 139391334
Test: m
Test: m services-stubs
Exempt-From-Owner-Approval: cherry-pick from internal
Merged-In: I027b8a22b3e7533f6203aabb9dc3f690e4e842a6
(cherry picked from commit abc72e45c6)
Change-Id: I027b8a22b3e7533f6203aabb9dc3f690e4e842a6
... in preparation for creating a stub library from services.jar
Bug: 139391334
Test: m
Exempt-From-Owner-Approval: cherry-pick from internal
Merged-In: Ifd6cfc77acf2284804a2f64011c2733b5c222369
(cherry picked from commit bae2e90796)
Change-Id: Ifd6cfc77acf2284804a2f64011c2733b5c222369
It's no longer needed as the configs moved to their own directory. Also CompatConfig now reads from the new location.
Bug: 140074769
Bug: 140092095
Test: m, atest FrameworksServicesTests
Change-Id: Ia800a63096693717b027c7291dc8005ca1c93fe5
This service connects to a remote system captions manager service. This
service is responsible for enabling system captions when the user
requests them. As the system binds to it, this service will be
persistent.
Cherry pick from ag/6761232
Bug: 128925852
Test: Manual. I created an implementation of the service.
Merged-In: Iafde1bb68f4754d8167624f47c6833d43c0ec336
Change-Id: Iafde1bb68f4754d8167624f47c6833d43c0ec336
Add a new service to system_server. It purely forwards
data from internal APIs to iorapd over binder, it is not a binder
service itself.
Currently forwards ActivityMetricsLaunchObserver APIs from
ActivityTaskManagerInternal.
Bug: 72170747
Change-Id: Ic4fa283df1c16660099030c74a0039ef24866819
Bunch of changes:
- Split public SmartSuggestionsService info ContentCaptureService and
AugmentedAutofillService
- Renamed 'intelligence' packages to either 'contentcapture' or
'autofil.augmented'
- Renamed internal packages and classes.
- Changed permissions, resource names, etc...
- Moved Augmented Autofill logic from IntelligeceManagerService (R.I.P.) to
Autofill.
- Optimized IPCs by passing a String instead of the InteractionSessionId
(that also solves the view -> service dependency).
Test: atest CtsContentCaptureServiceTestCases \
CtsAutoFillServiceTestCases \
FrameworksCoreTests:SettingsBackupTest
Test: manual verification with Augmented Autofill Service
Bug: 119638877
Bug: 117944706
Change-Id: I787fc2a0dbd9ad53e4d5edb0d2a9242346e4652d
Most jars don't need to be installed on the device. Instead of
using java_library and java_library_static to distinguish between
them make java_library and java_library_static identical and use
installable: true to identify the few jars that need to be dexed
and installed on the device.
Bug: 110885583
Test: m checkbuild
Change-Id: I579da7c1a712ec4fb49e288e7f3ab369cb75baf4
Other module besides services depend on services.core, and after
I417409281c928ea667d937090d2a0d9d72a449a2 they were getting
the non-priorityboosted version of the jar. Make services.core
a java_library that contains the output of the priorityboosting
java_genrule.
Test: m services
Change-Id: Ic9ca1b8f43f87b0d7d36b53bbc5136a331490c3e
See build/soong/README.md for more information.
Test: m checkbuild
Change-Id: I417409281c928ea667d937090d2a0d9d72a449a2
Merged-In: I417409281c928ea667d937090d2a0d9d72a449a2
Exempt-From-Owner-Approval: trivial conversion
(cherry-picked from commit e0b2ee52d2)
See build/soong/README.md for more information.
Test: m checkbuild
Change-Id: I11a9a39d14adc4c202c6a1725e92e52a38ff2585
Merged-In: I11a9a39d14adc4c202c6a1725e92e52a38ff2585
(cherry picked from commit 1742dd8cf3)