OSDN Git Service

Allow to control native bridge via a property
[android-x86/device-generic-common.git] / nativebridge / src / libnb.cpp
index 72e334d..8172c92 100644 (file)
@@ -15,6 +15,7 @@
 
 #include <dlfcn.h>
 #include <cutils/log.h>
+#include <cutils/properties.h>
 #include "nativebridge/native_bridge.h"
 
 namespace android {
@@ -51,8 +52,14 @@ static bool native_bridge2_initialize(const NativeBridgeRuntimeCallbacks *art_cb
                                       const char *isa)
 {
     ALOGV("enter native_bridge2_initialize %s %s", app_code_cache_dir, isa);
-    NativeBridgeCallbacks *cb = get_callbacks();
-    return cb ? cb->initialize(art_cbs, app_code_cache_dir, isa) : false;
+    if (property_get_bool("persist.sys.nativebridge", 0)) {
+        if (NativeBridgeCallbacks *cb = get_callbacks()) {
+            return cb->initialize(art_cbs, app_code_cache_dir, isa);
+        }
+    } else {
+        ALOGW("Native bridge is disabled");
+    }
+    return false;
 }
 
 static void *native_bridge2_loadLibrary(const char *libpath, int flag)