Как сохранить данные пользователя Chrome в процессе перезапуска Flutter Web приложения?

Пишу web приложение на Flutter с авторизацией OAuth2. При перезапуске Chrome в режиме дебага пароль в профиле пользователя не запоминается и каждый раз вводить пароль не хочется.

Помогло решение с основного SO.

Т.е. необходимо проделать следующее:

  1. Перейти в PROJECT_ROOT\.dart_tool\chrome-device. Если папки .dart-tool или chrome-device не существуют, то достаточно запустить проект в Chrome.
  2. Внутри PROJECT_ROOT\.dart_tool\chrome-device должна быть папка Default. Папку Deafult со всем содержимым необходимо скопировать в новую папку, в которой будут хранится профили пользователя для тестирования работы flutter приложения. К примеру, C:\Users\MyUser\AndroidStudioProjects\FlutterWebProfiles.
  3. Закрыть Android Studio
  4. Перейти в папку с установленным Flutter по пути flutter\bin\cache и удалить файл flutter_tools.stamp.
  5. Перейти в flutter\packages\flutter_tools\lib\src\web и открыть файл chrome.dart
  6. Изменить строку --user-data-dir=${userDataDir.path} на --user-data-dir=C:\\Users\\MyUser\\AndroidStudioProjects\\FlutterWebProfiles

Но данное решение обладает одним недостатком, flutter upgrade перезаписывает файл chrome.dart и приходится повторять шаги с 4 по 6.

Вроде как должен работать запуск Chrome в дебаг режиме с аргументом --web-browser-flag "--user-data-dir=C:\\Users\\MyUser\\AndroidStudioProjects\\FlutterWebProfiles". Но мне не удалось сохранить пароли используя этот аргумент. Аргумент задаю в Android Studio launch configuration.
Подскажите пожалуйста как можно реализовать сохранение паролей в Chrome в процессе перезапуска в дебаг режиме.


Ответы (0 шт):