Add public lib of Cronet apex mainline
This is a workaround since apex module library path is not
supported in jni
Bug: 139397529
Bug: 145474221
Test: Build
Test: manual test with Cronet
Test: atest CtsJniTestCases
Test: atest libnativeloader_test
Change-Id: Ifd8aa85bd78e95131b2ce3eab0ad32c2bb19cee2
diff --git a/libnativeloader/public_libraries.cpp b/libnativeloader/public_libraries.cpp
index 1ab9a30..d58b4ea 100644
--- a/libnativeloader/public_libraries.cpp
+++ b/libnativeloader/public_libraries.cpp
@@ -57,6 +57,8 @@
constexpr const char* kArtApexLibPath = "/apex/com.android.art/" LIB;
constexpr const char* kNeuralNetworksApexPublicLibrary = "libneuralnetworks.so";
+// STOPSHIP(b/146420818): Figure out how to use stub or non-specific lib name for libcronet.
+constexpr const char* kCronetApexPublicLibrary = "libcronet.80.0.3986.0.so";
// TODO(b/130388701): do we need this?
std::string root_dir() {
@@ -271,6 +273,10 @@
return kNeuralNetworksApexPublicLibrary;
}
+static std::string InitCronetPublicLibraries() {
+ return kCronetApexPublicLibrary;
+}
+
} // namespace
const std::string& preloadable_public_libraries() {
@@ -303,6 +309,11 @@
return list;
}
+const std::string& cronet_public_libraries() {
+ static std::string list = InitCronetPublicLibraries();
+ return list;
+}
+
const std::string& llndk_libraries() {
static std::string list = InitLlndkLibraries();
return list;