Classes that are used in framework.jar cannot be linked in NetworkStack, as the framework takes precedence in the classpath. This prevents the networkstack from using these classes due to the hidden API usage detection. Do the following: - jarjar any shared source file between framework and NetworkStack, so the version in the NetworkStack uses a different package. - Move any shared class not used in the NetworkStack to services.net The CL uses jarjar on the app copy and not the framework classes, as the framework cannot be updated without an OTA, and non-network stack specific classes should not be renamed because of the network stack. Test: atest FrameworksNetTests NetworkStackTests Test: flashed svelte build, WiFi works Bug: 124033493 Change-Id: I85d888b756adc28c36638913632bfdfdbf0e0486
46 lines
1.4 KiB
Plaintext
46 lines
1.4 KiB
Plaintext
//
|
|
// Copyright (C) 2018 The Android Open Source Project
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
//
|
|
|
|
// Library including the network stack, used to compile the network stack app, or linked into the
|
|
// system server on devices that run the stack there
|
|
java_library {
|
|
name: "NetworkStackLib",
|
|
sdk_version: "system_current",
|
|
installable: true,
|
|
srcs: [
|
|
"src/**/*.java",
|
|
":framework-networkstack-shared-srcs",
|
|
":services-networkstack-shared-srcs",
|
|
],
|
|
static_libs: [
|
|
"netd_aidl_interface-java",
|
|
"networkstack-aidl-interfaces-java",
|
|
]
|
|
}
|
|
|
|
// Updatable network stack packaged as an application
|
|
android_app {
|
|
name: "NetworkStack",
|
|
sdk_version: "system_current",
|
|
certificate: "platform",
|
|
privileged: true,
|
|
static_libs: [
|
|
"NetworkStackLib"
|
|
],
|
|
jarjar_rules: "jarjar-rules-shared.txt",
|
|
manifest: "AndroidManifest.xml",
|
|
required: ["NetworkStackPermissionStub"],
|
|
} |