@NonNull
    @SuppressWarnings("unchecked")
    public static ActivityOptionsCompat makeSceneTransitionAnimation(@NonNull Activity activity,
                                                                     Pair<View, String>... sharedElements) {
        if (Build.VERSION.SDK_INT >= 21) {
            android.util.Pair<View, String>[] pairs = null;
            if (sharedElements != null) {
                pairs = new android.util.Pair[sharedElements.length];
                for (int i = 0; i < sharedElements.length; i++) {
                    pairs[i] = android.util.Pair.create(
                            sharedElements[i].first, sharedElements[i].second);
                }
            }
            return new ActivityOptionsCompatImpl(
                    ActivityOptions.makeSceneTransitionAnimation(activity, pairs));
        }
        return new ActivityOptionsCompat();
    }
Create an ActivityOptions to transition between Activities using cross-Activity scene
animations. This method carries the position of multiple shared elements to the started
Activity. The position of the first element in sharedElements
will be used as the epicenter for the exit Transition. The position of the associated
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 sharedElements The names of the shared elements to transfer to the called
                      Activity and their associated Views. The Views must each have
                      a unique shared element name.
@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