From 326f7bb0231a90e4f54f536d9d75fb8af649e4d6 Mon Sep 17 00:00:00 2001 From: Remi NGUYEN VAN Date: Tue, 23 Mar 2021 14:45:58 +0000 Subject: [PATCH] Add min_sdk_version to connectivity targets All targets need min_sdk_version 30 to be included in the tethering APEX. They will actually never be used on SDK 30 and are only loaded on 31, but this is necessary to be included in com.android.tethering. Original change (project moved): I190fd1f3c9fabff057d0a2bd7f45b63a4fe447b3 Bug: 171540887 Test: m Merged-In: I3c2563d4ae4e3715d0c6270344ba8f7ef067872f Change-Id: Ied5faa1a370cbc8836f46388fdb9b42d2a263232 --- framework/Android.bp | 7 +++++++ service/Android.bp | 12 +++++++----- service/ServiceConnectivityResources/Android.bp | 1 + .../jni/com_android_server_TestNetworkService.cpp | 7 ++----- 4 files changed, 17 insertions(+), 10 deletions(-) diff --git a/framework/Android.bp b/framework/Android.bp index 4fa9ccbc02..a969c835d6 100644 --- a/framework/Android.bp +++ b/framework/Android.bp @@ -22,6 +22,7 @@ package { java_library { name: "framework-connectivity-protos", sdk_version: "module_current", + min_sdk_version: "30", proto: { type: "nano", }, @@ -105,6 +106,10 @@ cc_defaults { "-Wall", "-Werror", "-Wno-unused-parameter", + // Don't warn about S API usage even with + // min_sdk 30: the library is only loaded + // on S+ devices + "-Wno-unguarded-availability", "-Wthread-safety", ], shared_libs: [ @@ -131,6 +136,7 @@ cc_library_static { cc_library_shared { name: "libframework-connectivity-jni", + min_sdk_version: "30", defaults: ["libframework-connectivity-defaults"], srcs: [ "jni/android_net_NetworkUtils.cpp", @@ -147,6 +153,7 @@ cc_library_shared { java_library { name: "framework-connectivity.impl", sdk_version: "module_current", + min_sdk_version: "30", srcs: [ ":framework-connectivity-sources", ], diff --git a/service/Android.bp b/service/Android.bp index ec8887cad4..b07c55fdf7 100644 --- a/service/Android.bp +++ b/service/Android.bp @@ -21,7 +21,7 @@ package { cc_library_shared { name: "libservice-connectivity", - // TODO: build against the NDK (sdk_version: "30" for example) + min_sdk_version: "30", cflags: [ "-Wall", "-Werror", @@ -33,13 +33,12 @@ cc_library_shared { "jni/onload.cpp", ], stl: "libc++_static", + header_libs: [ + "libbase_headers", + ], shared_libs: [ - "libbase", "liblog", "libnativehelper", - // TODO: remove dependency on ifc_[add/del]_address by having Java code to add/delete - // addresses, and remove dependency on libnetutils. - "libnetutils", ], apex_available: [ "com.android.tethering", @@ -49,6 +48,7 @@ cc_library_shared { java_library { name: "service-connectivity-pre-jarjar", sdk_version: "system_server_current", + min_sdk_version: "30", srcs: [ "src/**/*.java", ":framework-connectivity-shared-srcs", @@ -87,6 +87,7 @@ java_library { java_library { name: "service-connectivity-protos", sdk_version: "system_current", + min_sdk_version: "30", proto: { type: "nano", }, @@ -103,6 +104,7 @@ java_library { java_library { name: "service-connectivity", sdk_version: "system_server_current", + min_sdk_version: "30", installable: true, static_libs: [ "service-connectivity-pre-jarjar", diff --git a/service/ServiceConnectivityResources/Android.bp b/service/ServiceConnectivityResources/Android.bp index 912d99f468..f491cc762b 100644 --- a/service/ServiceConnectivityResources/Android.bp +++ b/service/ServiceConnectivityResources/Android.bp @@ -22,6 +22,7 @@ package { android_app { name: "ServiceConnectivityResources", sdk_version: "module_30", + min_sdk_version: "30", resource_dirs: [ "res", ], diff --git a/service/jni/com_android_server_TestNetworkService.cpp b/service/jni/com_android_server_TestNetworkService.cpp index 36a6fde361..e7a40e5ea6 100644 --- a/service/jni/com_android_server_TestNetworkService.cpp +++ b/service/jni/com_android_server_TestNetworkService.cpp @@ -35,8 +35,6 @@ #include -#include "netutils/ifc.h" - #include "jni.h" #include #include @@ -48,9 +46,8 @@ namespace android { //------------------------------------------------------------------------------ static void throwException(JNIEnv* env, int error, const char* action, const char* iface) { - const std::string& msg = - android::base::StringPrintf("Error %s %s: %s", action, iface, strerror(error)); - + const std::string& msg = "Error: " + std::string(action) + " " + std::string(iface) + ": " + + std::string(strerror(error)); jniThrowException(env, "java/lang/IllegalStateException", msg.c_str()); }