diff --git a/Android.bp b/Android.bp index a2d8bfe42bfce365c993c76b194890b0573f7abd..36210e674624d2e404e0606c49eb7eb6b4784cb1 100644 --- a/Android.bp +++ b/Android.bp @@ -162,49 +162,54 @@ filegroup { path: "wifi/java", } -framework_srcs = [ - // Java/AIDL sources under frameworks/base - ":framework-core-sources", - ":framework-drm-sources", - ":framework-graphics-sources", - ":framework-keystore-sources", - ":framework-location-sources", - ":framework-lowpan-sources", - ":framework-media-sources", - ":framework-mca-effect-sources", - ":framework-mca-filterfw-sources", - ":framework-mca-filterpacks-sources", - ":framework-opengl-sources", - ":framework-rs-sources", - ":framework-sax-sources", - ":framework-telecomm-sources", - ":framework-telephony-sources", - ":framework-wifi-sources", - ":PacProcessor-aidl-sources", - ":ProxyHandler-aidl-sources", - - // AIDL sources from external directories - ":dumpstate_aidl", - ":framework_native_aidl", - ":gatekeeper_aidl", - ":gsiservice_aidl", - ":incidentcompanion_aidl", - ":installd_aidl", - ":keystore_aidl", - ":libaudioclient_aidl", - ":libbinder_aidl", - ":libbluetooth-binder-aidl", - ":libcamera_client_aidl", - ":libcamera_client_framework_aidl", - ":libupdate_engine_aidl", - ":storaged_aidl", - ":vold_aidl", - - // etc. - "core/java/**/*.logtags", - ":framework-javastream-protos", - ":framework-statslog-gen", -] +filegroup { + name: "framework-srcs", + srcs: [ + // Java/AIDL sources under frameworks/base + ":framework-core-sources", + ":framework-drm-sources", + ":framework-graphics-sources", + ":framework-keystore-sources", + ":framework-location-sources", + ":framework-lowpan-sources", + ":framework-media-sources", + ":framework-mca-effect-sources", + ":framework-mca-filterfw-sources", + ":framework-mca-filterpacks-sources", + ":framework-opengl-sources", + ":framework-rs-sources", + ":framework-sax-sources", + ":framework-telecomm-sources", + ":framework-telephony-sources", + ":framework-wifi-sources", + ":PacProcessor-aidl-sources", + ":ProxyHandler-aidl-sources", + + // AIDL sources from external directories + ":dumpstate_aidl", + ":framework_native_aidl", + ":gatekeeper_aidl", + ":gsiservice_aidl", + ":incidentcompanion_aidl", + ":installd_aidl", + ":keystore_aidl", + ":libaudioclient_aidl", + ":libbinder_aidl", + ":libbluetooth-binder-aidl", + ":libcamera_client_aidl", + ":libcamera_client_framework_aidl", + ":libupdate_engine_aidl", + ":storaged_aidl", + ":vold_aidl", + + // For the generated R.java and Manifest.java + ":framework-res{.aapt.srcjar}", + + // etc. + ":framework-javastream-protos", + ":framework-statslog-gen", + ], +} java_defaults { name: "framework-aidl-export-defaults", @@ -231,30 +236,10 @@ java_defaults { }, } -java_defaults { - name: "framework-defaults", - defaults: ["framework-aidl-export-defaults"], - installable: true, - - srcs: framework_srcs, - - aidl: { - generate_get_transaction_name: true, - }, - - exclude_srcs: [ - // See comment on framework-atb-backward-compatibility module below - "core/java/android/content/pm/AndroidTestBaseUpdater.java", - ], - - sdk_version: "core_platform", - libs: [ - "ext", - "updatable_media_stubs", - ], - - jarjar_rules: ":framework-jarjar-rules", - +// Collection of classes that are generated from non-Java files that are not listed in +// framework_srcs. These have no or very limited dependency to the framework. +java_library { + name: "framework-internal-utils", static_libs: [ "mimemap", "apex_aidl_interface-java", @@ -290,6 +275,38 @@ java_defaults { "com.android.sysprop.apex", "PlatformProperties", ], + sdk_version: "core_platform", + installable: false, +} + +java_defaults { + name: "framework-defaults", + defaults: ["framework-aidl-export-defaults"], + installable: true, + + srcs: [ + ":framework-srcs", + "core/java/**/*.logtags", + ], + + aidl: { + generate_get_transaction_name: true, + }, + + exclude_srcs: [ + // See comment on framework-atb-backward-compatibility module below + "core/java/android/content/pm/AndroidTestBaseUpdater.java", + ], + + sdk_version: "core_platform", + libs: [ + "ext", + "updatable_media_stubs", + ], + + jarjar_rules: ":framework-jarjar-rules", + + static_libs: ["framework-internal-utils"], required: [ // TODO: remove gps_debug when the build system propagates "required" properly. @@ -760,7 +777,7 @@ python_binary_host { ], } -// TODO: Don't rely on this list once droiddoc can take a list of packages to document +// TODO: Don't rely on this list by switching package.html into package-info.java frameworks_base_subdirs = [ "core/java", "graphics/java", @@ -780,13 +797,6 @@ frameworks_base_subdirs = [ "rs/java", ] -packages_to_document = [ - "android", - "javax/microedition/khronos", - "org/apache/http/conn", - "org/apache/http/params", -] - // Make the api/current.txt file available for use by modules in other // directories. filegroup { @@ -879,6 +889,8 @@ metalava_framework_docs_args += " --replace-documentation " + stubs_defaults { name: "framework-doc-stubs-default", srcs: [ + ":framework-srcs", + "core/java/**/*.logtags", "test-base/src/**/*.java", ":opt-telephony-srcs", ":opt-net-voip-srcs", @@ -888,8 +900,6 @@ stubs_defaults { "test-runner/src/**/*.java", ":jobscheduler-framework-source", ], - srcs_lib: "framework-minus-apex", - srcs_lib_whitelist_pkgs: packages_to_document, libs: framework_docs_only_libs, local_sourcepaths: frameworks_base_subdirs, create_doc_stubs: true, @@ -939,14 +949,15 @@ doc_defaults { stubs_defaults { name: "metalava-api-stubs-default", srcs: [ + ":framework-srcs", + "core/java/**/*.logtags", ":opt-telephony-srcs", ":opt-net-voip-srcs", ":core_public_api_files", ":updatable-media-srcs", ":jobscheduler-framework-source", ], - srcs_lib: "framework-minus-apex", - srcs_lib_whitelist_pkgs: packages_to_document, + libs: ["framework-internal-utils"], local_sourcepaths: frameworks_base_subdirs, installable: false, annotations_enabled: true, @@ -960,6 +971,7 @@ stubs_defaults { "sdk-dir", "api-versions-jars-dir", ], + sdk_version: "core_platform", } droidstubs { @@ -1271,6 +1283,7 @@ droidstubs { ":openjdk_java_files", ":opt-telephony-common-srcs", ], + arg_files: [ "core/res/AndroidManifest.xml", ], @@ -1405,7 +1418,7 @@ filegroup { // annotations to private apis aidl_mapping { name: "framework-aidl-mappings", - srcs: framework_srcs, + srcs: [":framework-srcs"], output: "framework-aidl-mappings.txt", } diff --git a/core/java/com/package.html b/core/java/com/package.html new file mode 100644 index 0000000000000000000000000000000000000000..8f35da9a81586cd0c96f6b7e4201b3329f8fc604 --- /dev/null +++ b/core/java/com/package.html @@ -0,0 +1,8 @@ +<!-- + This file is to hide classes in com.* packages from SDK +--> +<html> +<body> + {@hide} +</body> +</html> diff --git a/location/lib/Android.bp b/location/lib/Android.bp index b15cc5ccd656046b9da616d02c663fb542993118..ff6921d3e1c273766e5a51f8894fdaab27a4385b 100644 --- a/location/lib/Android.bp +++ b/location/lib/Android.bp @@ -16,13 +16,12 @@ java_sdk_library { name: "com.android.location.provider", - srcs: ["java/**/*.java"], + srcs: [ + "java/**/*.java", + ":framework-srcs", + ], libs: [ "androidx.annotation_annotation", ], api_packages: ["com.android.location.provider"], - srcs_lib: "framework-minus-apex", - // TODO(b/70046217): remove core/java and android below. It was added to provide definitions for - // types like android.os.Bundle - srcs_lib_whitelist_pkgs: ["android", "com.android.internal.location"], } diff --git a/media/Android.bp b/media/Android.bp index a7e565b384ada9cd40fc92e45afb084a799d4744..a59b3e76faedf5b608f567797088e690921f2213 100644 --- a/media/Android.bp +++ b/media/Android.bp @@ -97,18 +97,17 @@ droidstubs { ":framework-media-annotation-srcs", ], args: metalava_updatable_media_args, - // Ideally, sdk_version here should be "current_system", but "current - 1" is used - // to avoid dependency cycle with framework. - sdk_version: "28", + aidl: { + // TODO(b/135922046) remove this + include_dirs: ["frameworks/base/core/java"], + }, + sdk_version: "system_current", } java_library { name: "updatable_media_stubs", srcs: [":updatable-media-stubs"], - - // Ideally, sdk_version here should be "current_system", but "current - 1" is used - // to avoid dependency cycle with framework. - sdk_version: "28", + sdk_version: "system_current", } java_library { diff --git a/media/lib/signer/Android.bp b/media/lib/signer/Android.bp index 338ec12a9e287a34c323a070f987389921952859..85a007f427b866d171caf55611b38df01febe23a 100644 --- a/media/lib/signer/Android.bp +++ b/media/lib/signer/Android.bp @@ -16,8 +16,9 @@ java_sdk_library { name: "com.android.mediadrm.signer", - srcs: ["java/**/*.java"], + srcs: [ + "java/**/*.java", + ":framework-srcs", + ], api_packages: ["com.android.mediadrm.signer"], - srcs_lib: "framework-minus-apex", - srcs_lib_whitelist_pkgs: ["android.media"], } diff --git a/test-mock/Android.bp b/test-mock/Android.bp index 9a653cf7204c5509455370f2596aecbee8bfc678..34ac3dcc824fdb828a53932b69f0969c7516998f 100644 --- a/test-mock/Android.bp +++ b/test-mock/Android.bp @@ -19,14 +19,14 @@ java_sdk_library { name: "android.test.mock", - srcs: ["src/**/*.java"], + srcs: [ + "src/**/*.java", + ":framework-srcs", + ], api_packages: [ "android.test.mock", ], - - srcs_lib: "framework-minus-apex", - srcs_lib_whitelist_pkgs: ["android"], compile_dex: true, }