Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 307df45b authored by Kiyoung Kim's avatar Kiyoung Kim Committed by Gerrit Code Review
Browse files

Merge "Add product apk support from libnativeloader"

parents 174ae058 5cba0cff
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -1419,7 +1419,7 @@ Lcom/android/internal/os/BaseCommand;->mArgs:Landroid/os/ShellCommand;
Lcom/android/internal/os/BatterySipper$DrainType;->values()[Lcom/android/internal/os/BatterySipper$DrainType;
Lcom/android/internal/os/BatterySipper$DrainType;->values()[Lcom/android/internal/os/BatterySipper$DrainType;
Lcom/android/internal/os/BinderInternal;->getContextObject()Landroid/os/IBinder;
Lcom/android/internal/os/BinderInternal;->getContextObject()Landroid/os/IBinder;
Lcom/android/internal/os/BinderInternal;->handleGc()V
Lcom/android/internal/os/BinderInternal;->handleGc()V
Lcom/android/internal/os/ClassLoaderFactory;->createClassloaderNamespace(Ljava/lang/ClassLoader;ILjava/lang/String;Ljava/lang/String;ZZ)Ljava/lang/String;
Lcom/android/internal/os/ClassLoaderFactory;->createClassloaderNamespace(Ljava/lang/ClassLoader;ILjava/lang/String;Ljava/lang/String;ZLjava/lang/String;)Ljava/lang/String;
Lcom/android/internal/os/IDropBoxManagerService$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/os/IDropBoxManagerService;
Lcom/android/internal/os/IDropBoxManagerService$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/os/IDropBoxManagerService;
Lcom/android/internal/os/ProcessCpuTracker$Stats;->name:Ljava/lang/String;
Lcom/android/internal/os/ProcessCpuTracker$Stats;->name:Ljava/lang/String;
Lcom/android/internal/os/ProcessCpuTracker$Stats;->rel_stime:I
Lcom/android/internal/os/ProcessCpuTracker$Stats;->rel_stime:I
+2 −9
Original line number Original line Diff line number Diff line
@@ -115,20 +115,13 @@ public class ClassLoaderFactory {
        final ClassLoader classLoader = createClassLoader(dexPath, librarySearchPath, parent,
        final ClassLoader classLoader = createClassLoader(dexPath, librarySearchPath, parent,
                classLoaderName, sharedLibraries);
                classLoaderName, sharedLibraries);


        boolean isForVendor = false;
        for (String path : dexPath.split(":")) {
            if (path.startsWith("/vendor/")) {
                isForVendor = true;
                break;
            }
        }
        Trace.traceBegin(Trace.TRACE_TAG_ACTIVITY_MANAGER, "createClassloaderNamespace");
        Trace.traceBegin(Trace.TRACE_TAG_ACTIVITY_MANAGER, "createClassloaderNamespace");
        String errorMessage = createClassloaderNamespace(classLoader,
        String errorMessage = createClassloaderNamespace(classLoader,
                                                         targetSdkVersion,
                                                         targetSdkVersion,
                                                         librarySearchPath,
                                                         librarySearchPath,
                                                         libraryPermittedPath,
                                                         libraryPermittedPath,
                                                         isNamespaceShared,
                                                         isNamespaceShared,
                                                         isForVendor);
                                                         dexPath);
        Trace.traceEnd(Trace.TRACE_TAG_ACTIVITY_MANAGER);
        Trace.traceEnd(Trace.TRACE_TAG_ACTIVITY_MANAGER);


        if (errorMessage != null) {
        if (errorMessage != null) {
@@ -144,5 +137,5 @@ public class ClassLoaderFactory {
                                                            String librarySearchPath,
                                                            String librarySearchPath,
                                                            String libraryPermittedPath,
                                                            String libraryPermittedPath,
                                                            boolean isNamespaceShared,
                                                            boolean isNamespaceShared,
                                                            boolean isForVendor);
                                                            String dexPath);
}
}
+3 −3
Original line number Original line Diff line number Diff line
@@ -28,16 +28,16 @@ static jstring createClassloaderNamespace_native(JNIEnv* env,
                                              jstring librarySearchPath,
                                              jstring librarySearchPath,
                                              jstring libraryPermittedPath,
                                              jstring libraryPermittedPath,
                                              jboolean isShared,
                                              jboolean isShared,
                                              jboolean isForVendor) {
                                              jstring dexPath) {
    return android::CreateClassLoaderNamespace(env, targetSdkVersion,
    return android::CreateClassLoaderNamespace(env, targetSdkVersion,
                                               classLoader, isShared == JNI_TRUE,
                                               classLoader, isShared == JNI_TRUE,
                                               isForVendor == JNI_TRUE,
                                               dexPath,
                                               librarySearchPath, libraryPermittedPath);
                                               librarySearchPath, libraryPermittedPath);
}
}


static const JNINativeMethod g_methods[] = {
static const JNINativeMethod g_methods[] = {
    { "createClassloaderNamespace",
    { "createClassloaderNamespace",
      "(Ljava/lang/ClassLoader;ILjava/lang/String;Ljava/lang/String;ZZ)Ljava/lang/String;",
      "(Ljava/lang/ClassLoader;ILjava/lang/String;Ljava/lang/String;ZLjava/lang/String;)Ljava/lang/String;",
      reinterpret_cast<void*>(createClassloaderNamespace_native) },
      reinterpret_cast<void*>(createClassloaderNamespace_native) },
};
};