Использование единого входа в веб-представлении, управляемом третьей стороной, в Flutter Web

#flutter #single-sign-on #flutter-web

Вопрос:

Я использую различные параметры единого входа, такие как Google, для своего веб-приложения Flutter, которое в целом работает нормально. При открытии в веб-браузере диалоговое окно входа открывается либо во всплывающем окне (рабочий стол), либо на новой вкладке (мобильный телефон).

Однако, когда ссылка на мое приложение публикуется, например, в Facebook и открывается через приложение Facebook, веб-представление внутри приложения Facebook открывает мое приложение. В этом веб-представлении не разрешены вкладки, поэтому диалоговое окно входа открывается в текущем представлении, переопределяя мое приложение Flutter. Это предотвращает использование единого входа при открытии приложения таким образом (например, через приложение Facebook).

Я попытался заставить приложение запускаться в браузере по умолчанию вместо веб-представления Facebook, но не смог этого сделать.

Есть ли какой-либо способ открыть браузер по умолчанию, даже если ссылка на мое приложение открыта из приложения Facebook?

Или

Есть ли какой-либо способ предоставить доступ к экрану аутентификации (например, Google), не убивая при этом мое приложение?