@PolicyDirection was hidden API defined in IpSecManager and
mainline module IPsec(IKE) needs to depend on it.
To remove this hidden API dependency, this commit:
- Moves definition of @PolicyDirection to a separate class
- Creates sharing filegroup framework-ike-shared-srcs for mainline
IKE and include PolicyDirection.java
Bug: 146360859
Test: build, flash, boot
Test: atest FrameworksIkeTests
Change-Id: Ic6d7c06d4b92e16a9a65430365c9acc73932147b
As IKE is used in the frameworks for IKEv2/IPsec VPNs, IKE stubs
must be built and added to the frameworks build process
Bug: 147096727
Test: build, flash, boot
Test: FrameworksNetTests, FrameworksIkeTests passing
Change-Id: I51aad4ab800442d018bb170225c114a4ae5ea3b1
Using alternative way to replace some @hide API.
Bug: 144814072
Test: build, flash, boot
atest TetheringTests
Change-Id: I1e12d69db1ad91dff553e142e17c6a70808e1639
framework-minus-apex is the jar implementing APIs that the non-updatable
part of the framework provides. It shouldn't be used by modules that are
unbundled. Currently, several modules are using it directly because they
haven't finished clearing their private API usages. Until the work is
finished, allow framework-minus-apex only for those known modules.
Bug: 147128803
Test: m
Change-Id: I09204b7d600a4d0cc1f6d248df6c813bfb8bae01
Make a copy at compile time since we need to use it as a mainline module
Bug: 146834818
Test: manual (adb shell cmd phone help)
Change-Id: I4a2f54a0e926aa7040ba91853ca05f4bf38d25ec
Bug: b/144826001
Test: Build Pass: OK
Test: Power ON/OFF: OK
Test: Verify CPU loading improvement: OK
Change-Id: I75d55c3e53fce57e50533dc74af3381a6cee4b96
frameworks/base/Android.bp became too big. Modularize it into multiple
files for better readability and extensibility.
droidstubs and java_library modules for API stub libraries are moved to
StubLibraries.bp.
droidstubs and droiddoc modules for API documents are moved to
ApiDocs.bp
Also, added some documentation to explain the roles of the many modules
and how they are related with each other.
Bug: N/A
Test: m
Exempt-From-Owner-Approval: cherry-pick from internal
Merged-In: I285e8c82078d5bd3ed85b0343db2f6375ce7ffb7
(cherry picked from commit 0d7e86d03c8443cee90096ff0447fd50541d77c3)
Change-Id: I285e8c82078d5bd3ed85b0343db2f6375ce7ffb7
* changes:
Hide com.android.server package with @hide javadoc tag
Add more enums for the client and process attributes of SystemApi
SystemApi is parameterized
frameworks/base/Android.bp became too big. Modularize it into multiple
files for better readability and extensibility.
droidstubs and java_library modules for API stub libraries are moved to
StubLibraries.bp.
droidstubs and droiddoc modules for API documents are moved to
ApiDocs.bp
Also, added some documentation to explain the roles of the many modules
and how they are related with each other.
Bug: N/A
Test: m
Change-Id: I285e8c82078d5bd3ed85b0343db2f6375ce7ffb7
This is not a stable API surface, so modules shouldn't be building
against it. Compiling against core_platform also disables link-checking,
which can hide other problems.
Bug: 137191822
Test: m
Change-Id: I7ce7dad8c02b094c565daf8c178bc6f89bb610ef
framework-internal-utils doesn't have source files. Since nothing is
compiled in the module, the aidl include path is unnecessary.
Bug: N/A
Test: m
Change-Id: I446eaced60b35b09764f762ab5e711a47f822e56
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
Recent work has paved the way to get MediaStore.java building against
"core_platform", and this change is actually shifting MediaStore.java
inside the MediaProvider APEX boundary.
This involves defining a new "updatable-mediaprovider" library JAR
and ensuring that it's spliced into classpaths where needed to keep
everything building and working.
Note that the MediaProvider APK itself is still bundled, so we're
manually including the MediaStore.java when building that APK so that
we can continue referencing @hide symbols, but there's a STOPSHIP
comment to remove that once we get the APK building against
"system_current".
Bug: 144247087
Test: atest --test-mapping packages/providers/MediaProvider
Change-Id: I27ed3fde40751d9ac136a31710c62004b1b8962f
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
The module framework is now a build-only library whose purpose is to
provide hidden APIs from the non-updatable part of the platform and APIs
from the modules. Merging updatable_media_stub to framework, like the
stub libraries from other modules.
Bug: N/A
Test: m
Exempt-From-Owner-Approval: cherry-pick from internal
Merged-In: Ib627523aab44b7c41d27d70c6ae34cda5dc2e27c
(cherry picked from commit 92721349d9ec475b2df3a08775fde0bb3c11ffde)
Change-Id: Ib627523aab44b7c41d27d70c6ae34cda5dc2e27c
Existing annotations in libcore/ and frameworks/ will deleted after the migration. This also means that any java library that compiles @UnsupportedAppUsage requires a direct dependency on "unsupportedappusage" java_library.
Bug: 145132366
Test: m && diff unsupportedappusage_index.csv
Change-Id: I534e3fd1305e2f4af076986770033478448a665c
This is the first step, migrating java parts.
CleanSpec.mk added as a workaround for b/146502407
Test: builds and flashes
Bug: b/136132412
Change-Id: Id0a26aa011b555ea457b5aafe7f5789c36d25bcc
The module framework is now a build-only library whose purpose is to
provide hidden APIs from the non-updatable part of the platform and APIs
from the modules. Merging updatable_media_stub to framework, like the
stub libraries from other modules.
Bug: N/A
Test: m
Change-Id: Ib627523aab44b7c41d27d70c6ae34cda5dc2e27c
The modules 'framework', 'framework-minus-apex', 'framework-all' contain
private symbols that shouldn't be accessible to Mainline modules.
Restrict the access by making the framework modules to be accessible
only to the platform (the non updatable part).
Bug: 145796956
Test: m
Merged-In: I08cb61a67aef88ffe04ef52670144e1cbeff3cf9
Change-Id: I08cb61a67aef88ffe04ef52670144e1cbeff3cf9
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 119afc0695cf7632700119bab62a965793c34fd1)
Change-Id: I3305b71e22970e80db95f3daf3d7713603c7d68d
@IntDef annotations defined in the Wifi module are
@hide and cannot be referenced from the rest of
framework. Create a separate class for Wifi
annotations that can be jarjar'ed into external
clients.
Bug: 140299412
Test: compiles
Change-Id: I5beac976b4d12fb2c01f46cb46f9c54ab54618ea
Build framework-wifi against framework-minus-apex.
Build framework-minus-apex against "framework-wifi-stubs".
Build framework.jar against framework-wifi since a few
bundled apps/tests still use @hide Wifi APIs.
framework-minus-apex now only has @SystemApi dependencies
on framework-wifi.
Bug: 140299412
Test: atest FrameworksWifiTest FrameworksWifiApiTests
Change-Id: I3ada1dc7e8186c566cfbf7ad3d3b49878ae9860d
to avoid hidden API dependency.
Bug: 137202333
Test: make
Merged-In: I5a9ddbebadcf6226402f6e4a37ced168fe07d55b
Change-Id: I5a9ddbebadcf6226402f6e4a37ced168fe07d55b