Allow package local mocking for ActivityManager Unit Tests.

Test: bit FrameworksServicesTests:com.android.server.am.ActivityRecordTests
Change-Id: I0d1c807681e945b65e2dd9a7d0baa5fc59c8d259
diff --git a/services/tests/servicestests/src/com/android/server/am/ActivityTestsBase.java b/services/tests/servicestests/src/com/android/server/am/ActivityTestsBase.java
index 20077f3..d36f9d3 100644
--- a/services/tests/servicestests/src/com/android/server/am/ActivityTestsBase.java
+++ b/services/tests/servicestests/src/com/android/server/am/ActivityTestsBase.java
@@ -52,12 +52,20 @@
  * A base class to handle common operations in activity related unit tests.
  */
 public class ActivityTestsBase {
+    private static boolean sOneTimeSetupDone = false;
+
     private final Context mContext = InstrumentationRegistry.getContext();
     private HandlerThread mHandlerThread;
 
     @Before
     public void setUp() throws Exception {
-        MockitoAnnotations.initMocks(this);
+        if (!sOneTimeSetupDone) {
+            sOneTimeSetupDone = true;
+
+            // Allows to mock package local classes and methods
+            System.setProperty("dexmaker.share_classloader", "true");
+            MockitoAnnotations.initMocks(this);
+        }
         mHandlerThread = new HandlerThread("ActivityTestsBaseThread");
         mHandlerThread.start();
     }