Now tethering would be run in dedicated service.
TetheringManager is the interface used to communicate with
TetheringService. The new call flow would be: ConnectivityManager
-> ConnectivityService -> TetheringManager -> TetheringService.
Note: the return value of #tether(), #untether() and #setUsbTethering()
APIs would always be no error. Client can use #getLastTetherError()
or #getTetheredIfaces or listen tether state change to check
status of corresponding interface.
Bug: 136040414
Bug: 144742179
Test: -build, flash, boot
-atest TetheringTests
-atest FrameworksNetTests
Change-Id: I7e78c0e0a3e70f940a749ba2a39ece7c7ec5b9b3
52 lines
1.6 KiB
Plaintext
52 lines
1.6 KiB
Plaintext
//
|
|
// Copyright (C) 2019 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.
|
|
//
|
|
|
|
// AIDL interfaces between the core system and the tethering mainline module.
|
|
aidl_interface {
|
|
name: "tethering-aidl-interfaces",
|
|
local_include_dir: "src",
|
|
include_dirs: ["frameworks/base/core/java"], // For framework parcelables.
|
|
srcs: [
|
|
"src/android/net/ITetherInternalCallback.aidl",
|
|
"src/android/net/ITetheringConnector.aidl",
|
|
"src/android/net/TetheringConfigurationParcel.aidl",
|
|
"src/android/net/TetherStatesParcel.aidl",
|
|
],
|
|
backend: {
|
|
ndk: {
|
|
enabled: false,
|
|
},
|
|
cpp: {
|
|
enabled: false,
|
|
},
|
|
},
|
|
}
|
|
|
|
java_library {
|
|
name: "tethering-client",
|
|
sdk_version: "system_current",
|
|
static_libs: [
|
|
"tethering-aidl-interfaces-java",
|
|
],
|
|
}
|
|
|
|
// This is temporary file group which would be removed after TetheringManager is built
|
|
// into tethering-client. Will be done by aosp/1156906.
|
|
filegroup {
|
|
name: "tethering-manager",
|
|
srcs: ["src/android/net/TetheringManager.java"],
|
|
}
|