diff --git a/android/config.go b/android/config.go
index 7e3bc7a..3e7bb14 100644
--- a/android/config.go
+++ b/android/config.go
@@ -1948,10 +1948,6 @@
 	return c.config.productVariables.BuildBrokenVendorPropertyNamespace
 }
 
-func (c *deviceConfig) BuildBrokenVendorSeappUsesCoredomain() bool {
-	return c.config.productVariables.BuildBrokenVendorSeappUsesCoredomain
-}
-
 func (c *deviceConfig) BuildBrokenInputDir(name string) bool {
 	return InList(name, c.config.productVariables.BuildBrokenInputDirModules)
 }
diff --git a/android/variable.go b/android/variable.go
index 04e407f..ca9a221 100644
--- a/android/variable.go
+++ b/android/variable.go
@@ -443,17 +443,16 @@
 
 	ShippingApiLevel *string `json:",omitempty"`
 
-	BuildBrokenPluginValidation          []string `json:",omitempty"`
-	BuildBrokenClangAsFlags              bool     `json:",omitempty"`
-	BuildBrokenClangCFlags               bool     `json:",omitempty"`
-	BuildBrokenClangProperty             bool     `json:",omitempty"`
-	GenruleSandboxing                    *bool    `json:",omitempty"`
-	BuildBrokenEnforceSyspropOwner       bool     `json:",omitempty"`
-	BuildBrokenTrebleSyspropNeverallow   bool     `json:",omitempty"`
-	BuildBrokenUsesSoongPython2Modules   bool     `json:",omitempty"`
-	BuildBrokenVendorPropertyNamespace   bool     `json:",omitempty"`
-	BuildBrokenVendorSeappUsesCoredomain bool     `json:",omitempty"`
-	BuildBrokenInputDirModules           []string `json:",omitempty"`
+	BuildBrokenPluginValidation        []string `json:",omitempty"`
+	BuildBrokenClangAsFlags            bool     `json:",omitempty"`
+	BuildBrokenClangCFlags             bool     `json:",omitempty"`
+	BuildBrokenClangProperty           bool     `json:",omitempty"`
+	GenruleSandboxing                  *bool    `json:",omitempty"`
+	BuildBrokenEnforceSyspropOwner     bool     `json:",omitempty"`
+	BuildBrokenTrebleSyspropNeverallow bool     `json:",omitempty"`
+	BuildBrokenUsesSoongPython2Modules bool     `json:",omitempty"`
+	BuildBrokenVendorPropertyNamespace bool     `json:",omitempty"`
+	BuildBrokenInputDirModules         []string `json:",omitempty"`
 
 	BuildWarningBadOptionalUsesLibsAllowlist []string `json:",omitempty"`
 
