Recompress android.jar before packaging it.

This is to circumvent an issue where Q SDK release causes a problem to
developers who are stuck with an old Gradle version.

Fixes: 127733650
Test: m sdk & inspect android.jar size and contents
Change-Id: I52a211f57afba1b6d656bba2082e806481ef41c2
diff --git a/build/Android.mk b/build/Android.mk
index a86e2b6..1cad1b4 100644
--- a/build/Android.mk
+++ b/build/Android.mk
@@ -68,7 +68,16 @@
 android_jar_full_target := $(android_jar_intermediates)/android.jar
 android_jar_src_target := $(android_jar_intermediates)/android-stubs-src.jar
 
-$(android_jar_full_target): $(full_target)
+# unzip and zip android.jar before packaging it. (workaround for b/127733650)
+full_target_repackaged := $(android_jar_intermediates)/repackaged/repackaged.jar
+$(full_target_repackaged): $(full_target) | $(ZIPTIME)
+	@echo Repackaging SDK jar: $@
+	$(hide) rm -rf $(dir $@) && mkdir -p $(dir $@)
+	unzip -q $< -d $(dir $@)
+	cd $(dir $@) && zip -rqX $(notdir $@) *
+	$(remove-timestamps-from-package)
+
+$(android_jar_full_target): $(full_target_repackaged)
 	@echo Package SDK Stubs: $@
 	$(copy-file-to-target)