Class ShadowWallpaperManager

java.lang.Object
org.robolectric.shadows.ShadowWallpaperManager

@Implements(android.app.WallpaperManager.class) public class ShadowWallpaperManager extends Object
  • Constructor Details

    • ShadowWallpaperManager

      public ShadowWallpaperManager()
  • Method Details

    • sendWallpaperCommand

      @Implementation protected void sendWallpaperCommand(IBinder windowToken, String action, int x, int y, int z, Bundle extras)
    • setResource

      @Implementation(maxSdk=23) protected void setResource(int resid)
      Sets a resource id as the current wallpaper.

      This only caches the resource id in memory. Calling this will override any previously set resource and does not differentiate between users.

    • setResource

      @Implementation(minSdk=24) protected int setResource(int resid, int which)
    • hasResourceWallpaper

      @Implementation protected boolean hasResourceWallpaper(int resid)
      Returns whether the current wallpaper has been set through setResource(int) or setResource(int, int) with the same resource id.
    • setBitmap

      @Implementation(minSdk=24) protected int setBitmap(Bitmap fullImage, Rect visibleCropHint, boolean allowBackup, int which)
      Caches fullImage in the memory based on which.

      After a success call, any previously set live wallpaper is removed,

      Parameters:
      fullImage - the bitmap image to be cached in the memory
      visibleCropHint - not used
      allowBackup - not used
      which - either WallpaperManager.FLAG_LOCK or {WallpaperManager#FLAG_SYSTEM}
      Returns:
      0 if fails to cache. Otherwise, 1.
    • getBitmap

      @Nullable public Bitmap getBitmap(int which)
      Returns the memory cached Bitmap associated with which.
      Parameters:
      which - either WallpaperManager.FLAG_LOCK or {WallpaperManager#FLAG_SYSTEM}.
      Returns:
      The memory cached Bitmap associated with which. null if no bitmap was set.
    • getWallpaperFile

      @Implementation(minSdk=24) @Nullable protected ParcelFileDescriptor getWallpaperFile(int which)
      Gets a wallpaper file associated with which.
      Parameters:
      which - either WallpaperManager.FLAG_LOCK or {WallpaperManager#FLAG_SYSTEM}
      Returns:
      An open, readable file descriptor to the requested wallpaper image file; null if no such wallpaper is configured.
    • isSetWallpaperAllowed

      @Implementation(minSdk=24) protected boolean isSetWallpaperAllowed()
    • setIsSetWallpaperAllowed

      public void setIsSetWallpaperAllowed(boolean allowed)
    • isWallpaperSupported

      @Implementation(minSdk=23) protected boolean isWallpaperSupported()
    • setIsWallpaperSupported

      public void setIsWallpaperSupported(boolean supported)
    • setStream

      @Implementation(minSdk=24) protected int setStream(InputStream bitmapData, Rect visibleCropHint, boolean allowBackup, int which)
      Caches bitmapData in the memory based on which.
      Parameters:
      bitmapData - the input stream which contains a bitmap image to be cached in the memory
      visibleCropHint - not used
      allowBackup - not used
      which - either WallpaperManager.FLAG_LOCK or {WallpaperManager#FLAG_SYSTEM}
      Returns:
      0 if fails to cache. Otherwise, 1.
    • setWallpaperComponent

      @Implementation(minSdk=23) protected boolean setWallpaperComponent(ComponentName wallpaperService) throws IOException, XmlPullParserException
      Sets a live wallpaper, wallpaperService, as the current wallpaper.

      This only caches the live wallpaper info in the memory. Calling this will remove any previously set static wallpaper.

      Throws:
      IOException
      XmlPullParserException
    • getWallpaperInfo

      @Implementation protected WallpaperInfo getWallpaperInfo()
      Returns the information about the wallpaper if the current wallpaper is a live wallpaper component. Otherwise, if the wallpaper is a static image, this returns null.
    • setWallpaperDimAmount

      @Implementation(minSdk=33) protected void setWallpaperDimAmount(float dimAmount)
    • getAllWallpaperDimAmounts

      public List<Float> getAllWallpaperDimAmounts()
      Returns a list of all dim amounts set from calls to setWallpaperDimAmount. This can be used to verify that repeated calls to setWallpaperDimAmount are not done which can cause issues.
    • getWallpaperDimAmount

      @Implementation(minSdk=33) protected float getWallpaperDimAmount()
    • getWallpaperCommandRecords

      public List<ShadowWallpaperManager.WallpaperCommandRecord> getWallpaperCommandRecords()
    • reset

      @Resetter public static void reset()