diff --git a/src/test/java/com/android/tools/r8/apimodel/AndroidApiHashingDatabaseBuilderGeneratorTest.java b/src/test/java/com/android/tools/r8/apimodel/AndroidApiHashingDatabaseBuilderGeneratorTest.java
index a731b33..6cbb86e 100644
--- a/src/test/java/com/android/tools/r8/apimodel/AndroidApiHashingDatabaseBuilderGeneratorTest.java
+++ b/src/test/java/com/android/tools/r8/apimodel/AndroidApiHashingDatabaseBuilderGeneratorTest.java
@@ -126,9 +126,9 @@
                   methodReferences.forEach(field -> numberOfMethods.increment())));
         });
     // These numbers will change when updating api-versions.xml
-    assertEquals(6084, parsedApiClasses.size());
-    assertEquals(30817, numberOfFields.get());
-    assertEquals(47289, numberOfMethods.get());
+    assertEquals(6222, parsedApiClasses.size());
+    assertEquals(31430, numberOfFields.get());
+    assertEquals(48025, numberOfMethods.get());
   }
 
   private static String sampleVersion4ApiVersionsXml =
@@ -313,6 +313,9 @@
             if (method.getAccessFlags().isPublic()
                 && !notModeledMethods.contains(method.toSourceString())) {
               assertTrue(
+                  method.toSourceString()
+                      + " not found in API database. Did you forget to run main method in this"
+                      + " class to regenerate it?",
                   apiLevelCompute
                       .computeApiLevelForLibraryReference(method.getReference())
                       .isKnownApiLevel());
diff --git a/src/test/java/com/android/tools/r8/globalsynthetics/GlobalSyntheticsEnsureClassesOutputTest.java b/src/test/java/com/android/tools/r8/globalsynthetics/GlobalSyntheticsEnsureClassesOutputTest.java
index affeb5a..4a9dc6e 100644
--- a/src/test/java/com/android/tools/r8/globalsynthetics/GlobalSyntheticsEnsureClassesOutputTest.java
+++ b/src/test/java/com/android/tools/r8/globalsynthetics/GlobalSyntheticsEnsureClassesOutputTest.java
@@ -58,7 +58,7 @@
         .setMinApi(AndroidApiLevel.K)
         .compile()
         .inspect(
-            inspector -> assertEquals(backend.isDex() ? 1115 : 4, inspector.allClasses().size()));
+            inspector -> assertEquals(backend.isDex() ? 1147 : 4, inspector.allClasses().size()));
   }
 
   @Test
diff --git a/third_party/android_jar/lib-v36.tar.gz.sha1 b/third_party/android_jar/lib-v36.tar.gz.sha1
index de23b92..7ae4a86 100644
--- a/third_party/android_jar/lib-v36.tar.gz.sha1
+++ b/third_party/android_jar/lib-v36.tar.gz.sha1
@@ -1 +1 @@
-c31c4d657a3bd7376f73cd8b6d7e55bbcd7c6e39
\ No newline at end of file
+0c46498b29f843953a5e54013d0c6aa8177fc606
\ No newline at end of file
diff --git a/third_party/api_database/api_database.tar.gz.sha1 b/third_party/api_database/api_database.tar.gz.sha1
index 603cda4..a2a5acc 100644
--- a/third_party/api_database/api_database.tar.gz.sha1
+++ b/third_party/api_database/api_database.tar.gz.sha1
@@ -1 +1 @@
-65e3e25f7c5c1ecd5cf31084e5f0e0394c53800a
\ No newline at end of file
+f6cddd7abca49554f6913dc581bea9bd4c298370
\ No newline at end of file
diff --git a/tools/add-android-sdk.py b/tools/add-android-sdk.py
index 5d00eab..2eff289 100755
--- a/tools/add-android-sdk.py
+++ b/tools/add-android-sdk.py
@@ -100,7 +100,8 @@
           (os.path.dirname(destination), os.path.basename(destination)))
     print('Update d8_r8/commonBuildSrc/src/main/kotlin/DependenciesPlugin.kt'
           ' if this is a new dependency.')
-
+    print('Run main method in AndroidApiHashingDatabaseBuilderGeneratorTest'
+        ' to generate the API database.')
 
 if __name__ == '__main__':
     sys.exit(main())
