aar_resources_extractor ignore empty res/ and assets/ dirs.

RELNOTES: None
PiperOrigin-RevId: 182416060
diff --git a/tools/android/aar_resources_extractor.py b/tools/android/aar_resources_extractor.py
index 1a18e24..5ade3e7 100644
--- a/tools/android/aar_resources_extractor.py
+++ b/tools/android/aar_resources_extractor.py
@@ -43,7 +43,7 @@
   aar_contains_no_resources = True
   output_res_dir_abs = os.path.abspath(output_res_dir)
   for name in aar.namelist():
-    if name.startswith("res/"):
+    if name.startswith("res/") and not name.endswith("/"):
       ExtractOneFile(aar, name, output_res_dir_abs)
       aar_contains_no_resources = False
   if aar_contains_no_resources:
@@ -56,7 +56,7 @@
   aar_contains_no_assets = True
   output_assets_dir_abs = os.path.abspath(output_assets_dir)
   for name in aar.namelist():
-    if name.startswith("assets/"):
+    if name.startswith("assets/") and not name.endswith("/"):
       ExtractOneFile(aar, name, output_assets_dir_abs)
       aar_contains_no_assets = False
   if aar_contains_no_assets:
diff --git a/tools/android/aar_resources_extractor_test.py b/tools/android/aar_resources_extractor_test.py
index 18bb5b1..bce4a3d 100644
--- a/tools/android/aar_resources_extractor_test.py
+++ b/tools/android/aar_resources_extractor_test.py
@@ -50,6 +50,7 @@
 
   def testNoResources(self):
     aar = zipfile.ZipFile(io.BytesIO(), "w")
+    aar.writestr("res/", "")
     os.makedirs("out_dir")
     aar_resources_extractor.ExtractResources(aar, "out_dir")
     self.assertEqual([_HostPath("out_dir/res/values/empty.xml")],
@@ -76,6 +77,7 @@
 
   def testNoAssets(self):
     aar = zipfile.ZipFile(io.BytesIO(), "w")
+    aar.writestr("assets/", "")
     os.makedirs("out_dir")
     aar_resources_extractor.ExtractAssets(aar, "out_dir")
     expected_assets = [