Merge "VMRuntime: Add callback for non SDK API accesses." into pi-dev
diff --git a/libart/src/main/java/dalvik/system/VMRuntime.java b/libart/src/main/java/dalvik/system/VMRuntime.java
index 5201f73..8c80346 100644
--- a/libart/src/main/java/dalvik/system/VMRuntime.java
+++ b/libart/src/main/java/dalvik/system/VMRuntime.java
@@ -20,6 +20,7 @@
import java.lang.ref.FinalizerReference;
import java.util.HashMap;
import java.util.Map;
+import java.util.function.Consumer;
/**
* Provides an interface to VM-global, Dalvik-specific features.
@@ -59,6 +60,8 @@
*/
public static final int SDK_VERSION_CUR_DEVELOPMENT = 10000;
+ private static Consumer<String> nonSdkApiUsageConsumer = null;
+
private int targetSdkVersion = SDK_VERSION_CUR_DEVELOPMENT;
/**
@@ -441,4 +444,11 @@
* Sets up the priority of the system daemon thread (caller).
*/
public static native void setSystemDaemonThreadPriority();
+
+ /**
+ * Sets a callback that the runtime can call whenever a usage of a non SDK API is detected.
+ */
+ public static void setNonSdkApiUsageConsumer(Consumer<String> consumer) {
+ nonSdkApiUsageConsumer = consumer;
+ }
}