Home | History | Annotate | Download | only in shadows
      1 package org.robolectric.shadows;
      2 
      3 import android.os.Build;
      4 import android.os.StrictMode;
      5 import android.os.StrictMode.VmPolicy;
      6 import org.robolectric.RuntimeEnvironment;
      7 import org.robolectric.annotation.Implementation;
      8 import org.robolectric.annotation.Implements;
      9 import org.robolectric.util.ReflectionHelpers;
     10 
     11 @Implements(value=StrictMode.VmPolicy.class, minSdk = Build.VERSION_CODES.P)
     12 public class ShadowStrictModeVmPolicy {
     13 
     14   @Implementation
     15   protected static void __staticInitializer__() {
     16     ReflectionHelpers.callStaticMethod(StrictMode.VmPolicy.class, "__staticInitializer__");
     17     if (RuntimeEnvironment.getApiLevel() >= Build.VERSION_CODES.P) {
     18       // if VmPolicy was referenced first, sVmPolicy won't be set properly. So force a
     19       // re-initialization
     20       ReflectionHelpers.setStaticField(StrictMode.class, "sVmPolicy", VmPolicy.LAX);
     21     }
     22   }
     23 }
     24