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/apex/apex.go b/apex/apex.go
index 53bdc12..1f8a7ba 100644
--- a/apex/apex.go
+++ b/apex/apex.go
@@ -126,6 +126,10 @@
 	//
 	// Module separator
 	//
+	m["com.android.cellbroadcast"] = []string{"CellBroadcastApp", "CellBroadcastServiceModule"}
+	//
+	// Module separator
+	//
 	m["com.android.conscrypt"] = []string{"boringssl_self_test", "libc++", "libcrypto", "libssl"}
 	//
 	// Module separator
@@ -144,6 +148,7 @@
 		"android.hidl.token@1.0-utils",
 		"libaacextractor",
 		"libamrextractor",
+		"libaudioutils",
 		"libbase",
 		"libbinderthreadstate",
 		"libc++",
@@ -159,6 +164,8 @@
 		"libmpeg2extractor",
 		"liboggextractor",
 		"libprocessgroup",
+		"libspeexresampler",
+		"libstagefright_flacdec",
 		"libutils",
 		"libwavextractor",
 		"updatable-media",
@@ -168,36 +175,39 @@
 	//
 	m["com.android.media.swcodec"] = []string{
 		"android.frameworks.bufferhub@1.0",
-		"android.hardware.configstore@1.0",
-		"android.hardware.configstore@1.1",
-		"android.hardware.configstore-utils",
+		"android.hardware.common-ndk_platform",
 		"android.hardware.graphics.allocator@2.0",
 		"android.hardware.graphics.allocator@3.0",
+		"android.hardware.graphics.allocator@4.0",
 		"android.hardware.graphics.bufferqueue@1.0",
 		"android.hardware.graphics.bufferqueue@2.0",
 		"android.hardware.graphics.common@1.0",
 		"android.hardware.graphics.common@1.1",
 		"android.hardware.graphics.common@1.2",
+		"android.hardware.graphics.common-ndk_platform",
 		"android.hardware.graphics.mapper@2.0",
 		"android.hardware.graphics.mapper@2.1",
 		"android.hardware.graphics.mapper@3.0",
+		"android.hardware.graphics.mapper@4.0",
 		"android.hardware.media@1.0",
 		"android.hardware.media.bufferpool@2.0",
 		"android.hardware.media.c2@1.0",
+		"android.hardware.media.c2@1.1",
 		"android.hardware.media.omx@1.0",
 		"android.hidl.memory@1.0",
 		"android.hidl.memory.token@1.0",
 		"android.hidl.safe_union@1.0",
 		"android.hidl.token@1.0",
 		"android.hidl.token@1.0-utils",
+		"libaudioutils",
 		"libavservices_minijail",
-		"libbacktrace",
 		"libbase",
 		"libbinderthreadstate",
 		"libc++",
 		"libcap",
 		"libcodec2",
 		"libcodec2_hidl@1.0",
+		"libcodec2_hidl@1.1",
 		"libcodec2_soft_aacdec",
 		"libcodec2_soft_aacenc",
 		"libcodec2_soft_amrnbdec",
@@ -232,23 +242,19 @@
 		"libcodec2_vndk",
 		"libc_scudo",
 		"libcutils",
-		"libdexfile_support",
-		"libEGL",
 		"libfmq",
-		"libgraphicsenv",
+		"libgralloctypes",
 		"libhardware",
 		"libhidlbase",
 		"libhidlmemory",
 		"libion",
-		"liblzma",
 		"libmedia_codecserviceregistrant",
 		"libminijail",
-		"libnativebridge_lazy",
-		"libnativeloader_lazy",
 		"libopus",
 		"libprocessgroup",
 		"libscudo_wrapper",
 		"libsfplugin_ccodec_utils",
+		"libspeexresampler",
 		"libstagefright_amrnb_common",
 		"libstagefright_bufferpool@2.0.1",
 		"libstagefright_bufferqueue_helper",
@@ -257,7 +263,6 @@
 		"libstagefright_foundation",
 		"libsync",
 		"libui",
-		"libunwindstack",
 		"libutils",
 		"libvorbisidec",
 		"libvpx",
@@ -267,6 +272,10 @@
 	//
 	// Module separator
 	//
+	m["com.android.mediaprovider"] = []string{"libfuse", "MediaProvider", "MediaProviderGoogle"}
+	//
+	// Module separator
+	//
 	m["com.android.runtime"] = []string{
 		"libbase",
 		"libc++",
@@ -286,13 +295,14 @@
 	//
 	// Module separator
 	//
-	m["com.android.vndk"] = []string{
-		"libbacktrace",
-		"libbinderthreadstate",
-		"libblas",
-		"libcompiler_rt",
-		"libgui",
-		"libunwind",
+	m["com.android.wifi"] = []string{
+		"libbase",
+		"libc++",
+		"libcutils",
+		"libprocessgroup",
+		"libutils",
+		"libwifi-jni",
+		"wifi-service-resources",
 	}
 	//
 	// Module separator
diff --git a/cc/config/vndk.go b/cc/config/vndk.go
index 52bd9f0..9749b0b 100644
--- a/cc/config/vndk.go
+++ b/cc/config/vndk.go
@@ -19,6 +19,7 @@
 // has VndkUseCoreVariant set.
 var VndkMustUseVendorVariantList = []string{
 	"android.hardware.automotive.evs@1.0",
+	"android.hardware.automotive.occupant_awareness-ndk_platform",
 	"android.hardware.automotive.vehicle@2.0",
 	"android.hardware.broadcastradio@2.0",
 	"android.hardware.camera.device@1.0",
@@ -27,6 +28,7 @@
 	"android.hardware.camera.device@3.4",
 	"android.hardware.camera.provider@2.4",
 	"android.hardware.fastboot@1.0",
+	"android.hardware.light-ndk_platform",
 	"android.hardware.media.bufferpool@1.0",
 	"android.hardware.neuralnetworks@1.0",
 	"android.hardware.neuralnetworks@1.1",
@@ -39,6 +41,7 @@
 	"android.hardware.power@1.0",
 	"android.hardware.power@1.1",
 	"android.hardware.radio@1.4",
+	"android.hardware.rebootescrow-ndk_platform",
 	"android.hardware.secure_element@1.0",
 	"android.hardware.sensors@1.0",
 	"android.hardware.soundtrigger@2.0",
@@ -60,6 +63,8 @@
 	"libaudioroute",
 	"libbinder",
 	"libcamera_metadata",
+	"libcodec2_hidl@1.0",
+	"libcodec2_vndk",
 	"libcrypto",
 	"libexpat",
 	"libgatekeeper",
@@ -104,6 +109,7 @@
 	"libstagefright_soft_vorbisdec",
 	"libstagefright_soft_vpxdec",
 	"libstagefright_soft_vpxenc",
+	"libstagefright_softomx",
 	"libstagefright_xmlparser",
 	"libui",
 	"libvorbisidec",
diff --git a/java/config/config.go b/java/config/config.go
index 7f446e5..03588dc 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",
@@ -47,6 +48,7 @@
 		"core-libart",
 		// TODO: Could this be all updatable bootclasspath jars?
 		"updatable-media",
+		"framework-mediaprovider",
 		"framework-sdkextensions",
 		"ike",
 	}
