Annotation Type Implements


@Documented @Retention(RUNTIME) @Target(TYPE) public @interface Implements
Indicates that a class declaration is intended to shadow an Android class declaration. The Robolectric runtime searches classes with this annotation for methods with the Implementation annotation and calls them in place of the methods on the Android class.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static interface 
    An interface used as the default for the picker param.
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    boolean
    This method has precedence over the default behavior of calling through to real code.
    @NonNull String
    Android class name (if the Class object is not accessible).
    boolean
    Denotes that this type exists in the public Android SDK.
    int
    If specified, the shadow class will be applied only for this SDK or lesser.
    int
    If specified, the shadow class will be applied only for this SDK or greater.
    @NonNull Class<? extends ShadowPicker<?>>
    If specified, the picker will be instantiated and called from within the newly-created Robolectric classloader.
    @NonNull Class<?>
    The Android class to be shadowed.
  • Element Details

    • value

      @NonNull Class<?> value
      The Android class to be shadowed.
      Returns:
      Android class to shadow.
      Default:
      void.class
    • className

      @NonNull String className
      Android class name (if the Class object is not accessible).
      Returns:
      Android class name.
      Default:
      ""
    • isInAndroidSdk

      boolean isInAndroidSdk
      Denotes that this type exists in the public Android SDK. When this value is true, the annotation processor will generate a shadowOf method.
      Returns:
      True if the type is exposed in the Android SDK.
      Default:
      true
    • minSdk

      int minSdk
      If specified, the shadow class will be applied only for this SDK or greater.
      Default:
      -1
    • maxSdk

      int maxSdk
      If specified, the shadow class will be applied only for this SDK or lesser.
      Default:
      -1
    • shadowPicker

      @NonNull Class<? extends ShadowPicker<?>> shadowPicker
      If specified, the picker will be instantiated and called from within the newly-created Robolectric classloader. All shadow classes implementing the same Android class must use the same ShadowPicker.
      Default:
      org.robolectric.annotation.Implements.DefaultShadowPicker.class
    • callNativeMethodsByDefault

      boolean callNativeMethodsByDefault
      This method has precedence over the default behavior of calling through to real code. For instance, if this method is true, the native method variant will be preferred over the no-op native variant.
      Default:
      false