Merge "Allow EMMA_INSTRUMENT_FRAMEWORK during ninja" am: a62862bd08 am: 7ef5d07452 am: 58e0f20f85

Change-Id: I76ac1540c702ecaac49d7604033e99abb4d967ac
diff --git a/android/neverallow.go b/android/neverallow.go
index cef73fb..39184b5 100644
--- a/android/neverallow.go
+++ b/android/neverallow.go
@@ -52,6 +52,7 @@
 	AddNeverAllowRules(createTrebleRules()...)
 	AddNeverAllowRules(createLibcoreRules()...)
 	AddNeverAllowRules(createMediaRules()...)
+	AddNeverAllowRules(createMediaProviderRules()...)
 	AddNeverAllowRules(createJavaDeviceForHostRules()...)
 }
 
@@ -157,6 +158,14 @@
 	}
 }
 
+func createMediaProviderRules() []Rule {
+	return []Rule{
+		NeverAllow().
+			With("libs", "framework-mediaprovider").
+			Because("framework-mediaprovider includes private APIs. Use framework_mediaprovider_stubs instead."),
+	}
+}
+
 func createJavaDeviceForHostRules() []Rule {
 	javaDeviceForHostProjectsWhitelist := []string{
 		"external/guava",
diff --git a/android/neverallow_test.go b/android/neverallow_test.go
index 6f07a4a..b57bb3f 100644
--- a/android/neverallow_test.go
+++ b/android/neverallow_test.go
@@ -203,6 +203,19 @@
 		},
 	},
 	{
+		name: "dependency on framework-mediaprovider",
+		fs: map[string][]byte{
+			"Android.bp": []byte(`
+				java_library {
+					name: "needs_framework_mediaprovider",
+					libs: ["framework-mediaprovider"],
+				}`),
+		},
+		expectedErrors: []string{
+			"framework-mediaprovider includes private APIs. Use framework_mediaprovider_stubs instead.",
+		},
+	},
+	{
 		name: "java_device_for_host",
 		fs: map[string][]byte{
 			"Android.bp": []byte(`
diff --git a/cc/config/vndk.go b/cc/config/vndk.go
index c3cda49..902bcc1 100644
--- a/cc/config/vndk.go
+++ b/cc/config/vndk.go
@@ -107,6 +107,8 @@
 	"libaudioutils",
 	"libbinder",
 	"libcamera_metadata",
+	"libcodec2_hidl@1.0",
+	"libcodec2_vndk",
 	"libcrypto",
 	"libdiskconfig",
 	"libdumpstateutil",
@@ -130,6 +132,7 @@
 	"libsqlite",
 	"libssl",
 	"libstagefright_amrnb_common",
+	"libstagefright_bufferpool@2.0",
 	"libstagefright_bufferqueue_helper",
 	"libstagefright_enc_common",
 	"libstagefright_flacdec",
@@ -157,6 +160,7 @@
 	"libstagefright_soft_vorbisdec",
 	"libstagefright_soft_vpxdec",
 	"libstagefright_soft_vpxenc",
+	"libstagefright_softomx",
 	"libstagefright_xmlparser",
 	"libsysutils",
 	"libtinyxml2",
@@ -165,5 +169,6 @@
 	"libxml2",
 	"libyuv",
 	"libziparchive",
+	"vintf-rebootescrow-ndk_platform",
 	"vintf-vibrator-ndk_platform",
 }
diff --git a/java/config/config.go b/java/config/config.go
index 9738454..88d9411 100644
--- a/java/config/config.go
+++ b/java/config/config.go
@@ -37,6 +37,7 @@
 
 	InstrumentFrameworkModules = []string{
 		"framework",
+		"framework-minus-apex",
 		"telephony-common",
 		"services",
 		"android.car",
@@ -46,6 +47,7 @@
 		"core-oj",
 		"core-libart",
 		"updatable-media",
+		"framework-mediaprovider",
 		"ike",
 	}
 )