@NonNull
    public static ActivityOptionsCompat makeSceneTransitionAnimation(@NonNull Activity activity,
                                                                     @NonNull View sharedElement, @NonNull String sharedElementName) {
        if (Build.VERSION.SDK_INT >= 21) {
            return new ActivityOptionsCompatImpl(ActivityOptions.makeSceneTransitionAnimation(
                    activity, sharedElement, sharedElementName));
        }
        return new ActivityOptionsCompat();
    }
Create an ActivityOptions to transition between Activities using cross-Activity scene
animations. This method carries the position of one shared element to the started Activity.
The position of <code>sharedElement</code> will be used as the epicenter for the
exit Transition. The position of the shared element in the launched Activity will be the
epicenter of its entering Transition.

<p>This requires {@link android.view.Window#FEATURE_CONTENT_TRANSITIONS} to be
enabled on the calling Activity to cause an exit transition. The same must be in
the called Activity to get an entering transition.</p>

@param activity          The Activity whose window contains the shared elements.
@param sharedElement     The View to transition to the started Activity. sharedElement must
                         have a non-null sharedElementName.
@param sharedElementName The shared element name as used in the target Activity. This may
                         be null if it has the same name as sharedElement.
@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