The method setEnterSharedElementCallback is not working on android 10 after onPause (start new activity, home press), if onPause is not call, everything is work fine. I tested on S10 and Google pixel 2, pixel 4. Below android 10, all device work good.
@Override
public void finishAfterTransition() {
onFinish();
super.finishAfterTransition();
}
private void onFinish() {
setEnterSharedElementCallback(new SharedElementCallback() {
@Override
public void onMapSharedElements(List<String> names, Map<String, View> sharedElements) {
super.onMapSharedElements(names, sharedElements);
Fragment fragment = getCurrentFragment();
if (fragment == null) {
return;
}
View view = ((BaseMediaFragment) fragment).getTransitionView();
if (view == null) {
return;
}
view.setTransitionName(mMedias.get(mViewPager.getCurrentItem()).getId());
names.clear();
sharedElements.clear();
Media media = getCurrentMedia();
String transitionName = view.getTransitionName();
names.add(transitionName);
sharedElements.put(transitionName, view);
setExitSharedElementCallback((SharedElementCallback) null);
Intent intent = new Intent();
intent.putExtra(Constants.ExtraKey.EXTRA_ID_SELECTED, media.getId());
intent.putExtra(Constants.ExtraKey.EXTRA_ALBUM, mAlbum);
setResult(Activity.RESULT_OK, intent);
}
});
}