Remove Class.forName uses from reflection-based wrappers.

Object.getClass returns the implementation class, which has all the
methods, so we don't need Class.forName.

Bug: 229268202
Test: adb shell pm art optimize-package -m speed -f \
  com.google.android.youtube
Ignore-AOSP-First: ART Services.
Change-Id: If5deb179c84ad9ee617538627bccebb5535ea407
diff --git a/libartservice/service/java/com/android/server/art/wrapper/AndroidPackageApi.java b/libartservice/service/java/com/android/server/art/wrapper/AndroidPackageApi.java
index 66f82a6..a6431b0 100644
--- a/libartservice/service/java/com/android/server/art/wrapper/AndroidPackageApi.java
+++ b/libartservice/service/java/com/android/server/art/wrapper/AndroidPackageApi.java
@@ -70,9 +70,7 @@
     @NonNull
     public int[] getSplitFlags() {
         try {
-            Class<?> parsingPackageImplClass =
-                    Class.forName("com.android.server.pm.pkg.parsing.ParsingPackageImpl");
-            return (int[]) parsingPackageImplClass.getMethod("getSplitFlags").invoke(mPkg);
+            return (int[]) mPkg.getClass().getMethod("getSplitFlags").invoke(mPkg);
         } catch (ReflectiveOperationException e) {
             throw new RuntimeException(e);
         }
diff --git a/libartservice/service/java/com/android/server/art/wrapper/PackageManagerLocal.java b/libartservice/service/java/com/android/server/art/wrapper/PackageManagerLocal.java
index 650d29c..d6afa8f 100644
--- a/libartservice/service/java/com/android/server/art/wrapper/PackageManagerLocal.java
+++ b/libartservice/service/java/com/android/server/art/wrapper/PackageManagerLocal.java
@@ -66,8 +66,7 @@
         try {
             int userId = (int) UserHandle.class.getMethod("getUserId", int.class)
                                  .invoke(null, callingUid);
-            Class<?> computerClass = Class.forName("com.android.server.pm.Computer");
-            Object packageState = computerClass
+            Object packageState = snapshot.getClass()
                                           .getMethod("getPackageStateForInstalledAndFiltered",
                                                   String.class, int.class, int.class)
                                           .invoke(snapshot, packageName, callingUid, userId);
diff --git a/libartservice/service/java/com/android/server/art/wrapper/PackageState.java b/libartservice/service/java/com/android/server/art/wrapper/PackageState.java
index 2235514..c591274 100644
--- a/libartservice/service/java/com/android/server/art/wrapper/PackageState.java
+++ b/libartservice/service/java/com/android/server/art/wrapper/PackageState.java
@@ -85,9 +85,9 @@
                         + ". This should never happen.");
             }
 
-            Class<?> androidPackageHiddenClass =
-                    Class.forName("com.android.server.pm.parsing.pkg.AndroidPackageHidden");
-            return (String) androidPackageHiddenClass.getMethod("getPrimaryCpuAbi")
+            return (String) pkg.getRealInstance()
+                    .getClass()
+                    .getMethod("getPrimaryCpuAbi")
                     .invoke(pkg.getRealInstance());
         } catch (ReflectiveOperationException e) {
             throw new RuntimeException(e);
@@ -113,9 +113,9 @@
                         + ". This should never happen.");
             }
 
-            Class<?> androidPackageHiddenClass =
-                    Class.forName("com.android.server.pm.parsing.pkg.AndroidPackageHidden");
-            return (String) androidPackageHiddenClass.getMethod("getSecondaryCpuAbi")
+            return (String) pkg.getRealInstance()
+                    .getClass()
+                    .getMethod("getSecondaryCpuAbi")
                     .invoke(pkg.getRealInstance());
         } catch (ReflectiveOperationException e) {
             throw new RuntimeException(e);