@NonNull
    public static ActivityOptionsCompat makeThumbnailScaleUpAnimation(@NonNull View source,
                                                                      @NonNull Bitmap thumbnail, int startX, int startY) {
        if (Build.VERSION.SDK_INT >= 16) {
            return new ActivityOptionsCompatImpl(ActivityOptions.makeThumbnailScaleUpAnimation(
                    source, thumbnail, startX, startY));
        }
        return new ActivityOptionsCompat();
    }
Create an ActivityOptions specifying an animation where a thumbnail is
scaled from a given position to the new activity window that is being
started.
<p/>
If the Intent this is being used with has not set its
{@link android.content.Intent#setSourceBounds(Rect)},
those bounds will be filled in for you based on the initial thumbnail
location and size provided here.

@param source    The View that this thumbnail is animating from. This
                 defines the coordinate space for startX and startY.
@param thumbnail The bitmap that will be shown as the initial thumbnail
                 of the animation.
@param startX    The x starting location of the bitmap, relative to source.
@param startY    The y starting location of the bitmap, relative to source.
@return Returns a new ActivityOptions object that you can use to supply
these options as the options Bundle when starting an activity.
android/android_framework/base/src/main/java/github/tornaco/android/thanos/core/compat/ActivityOptionsCompat.java