Есть решение:
При тестировании функциональности обновления приложения:
Версия установленного приложения и код версии должны быть меньше, чем у действующего в магазине Play Store.
Проверьте его на реальном Android устройстве вместо AVD или эмулятора.
Код в заданном вопросе верный, Но должен обрабатывать обратный вызов в методе onActivityResult.
От Google,
Благодаря внутреннему обмену приложениями вы можете быстро поделиться пакетом приложений или APK с вашей внутренней командой и тестерами, загрузив комплект приложений, который вы хотите протестировать, в консоль Play.
Вы также можете использовать внутренний общий доступ к приложениям для тестирования обновлений в приложении, как указано ниже:
Вкл. на своем тестовом устройстве убедитесь, что вы уже установили версию своего приложения, отвечающую следующим требованиям:
Приложение было установлено с использованием внутреннего URL-адреса общего доступа к приложению. Поддерживает обновления в приложении. Использует код версии ниже T Обновленная версия вашего приложения Следуйте инструкциям Play Console, чтобы поделиться своим приложением внутри. Убедитесь, что вы загрузили версию своего приложения, которая использует код версии, который выше, чем тот, который вы уже установили на тестовом устройстве. На тестовом устройстве нажмите только внутреннюю ссылку на общий доступ к приложениям для обновления версии вашего приложения. Не устанавливайте приложение со страницы магазина Google Play, которую вы видите после нажатия на ссылку.
Откройте приложение из ящика приложения устройства или с главного экрана. Теперь обновление должно быть доступно для вашего приложения, и вы можете протестировать реализацию обновлений в приложении.
Вот и все.