Support new Doclava flag

CL I5f92a54d718749f8ddef9472f3b6387a3debd385 adds a new "-dexApi" flag
to Doclava, which generates the public API as a list of Dex signatures.
Add support for this flag to Soong and expose it in the droiddoc rule.

Bug: 80461842
Bug: 64382372
Test: make out/target/common/obj/PACKAGING/hiddenapi-blacklist.txt
Change-Id: Iadf09f17bb783209a6555ce5289c381bf025a01c
diff --git a/java/androidmk.go b/java/androidmk.go
index 0840198..ab9ceeb 100644
--- a/java/androidmk.go
+++ b/java/androidmk.go
@@ -333,6 +333,9 @@
 				if ddoc.apiFile != nil {
 					fmt.Fprintln(w, apiFilePrefix+"API_FILE := ", ddoc.apiFile.String())
 				}
+				if ddoc.dexApiFile != nil {
+					fmt.Fprintln(w, apiFilePrefix+"DEX_API_FILE := ", ddoc.dexApiFile.String())
+				}
 				if ddoc.privateApiFile != nil {
 					fmt.Fprintln(w, apiFilePrefix+"PRIVATE_API_FILE := ", ddoc.privateApiFile.String())
 				}
diff --git a/java/droiddoc.go b/java/droiddoc.go
index b641041..ca99e76 100644
--- a/java/droiddoc.go
+++ b/java/droiddoc.go
@@ -203,6 +203,9 @@
 	// the generated public API filename by Doclava.
 	Api_filename *string
 
+	// the generated public Dex API filename by Doclava.
+	Dex_api_filename *string
+
 	// the generated private API filename by Doclava.
 	Private_api_filename *string
 
@@ -266,6 +269,7 @@
 
 	properties        DroiddocProperties
 	apiFile           android.WritablePath
+	dexApiFile        android.WritablePath
 	privateApiFile    android.WritablePath
 	privateDexApiFile android.WritablePath
 	removedApiFile    android.WritablePath
@@ -753,6 +757,12 @@
 		implicitOutputs = append(implicitOutputs, d.privateApiFile)
 	}
 
+	if String(d.properties.Dex_api_filename) != "" {
+		d.dexApiFile = android.PathForModuleOut(ctx, String(d.properties.Dex_api_filename))
+		args = args + " -dexApi " + d.dexApiFile.String()
+		implicitOutputs = append(implicitOutputs, d.dexApiFile)
+	}
+
 	if String(d.properties.Private_dex_api_filename) != "" {
 		d.privateDexApiFile = android.PathForModuleOut(ctx, String(d.properties.Private_dex_api_filename))
 		args = args + " -privateDexApi " + d.privateDexApiFile.String()