Как сохранить данные пользователя Chrome в процессе перезапуска Flutter Web приложения?
Пишу web приложение на Flutter с авторизацией OAuth2. При перезапуске Chrome в режиме дебага пароль в профиле пользователя не запоминается и каждый раз вводить пароль не хочется.
Помогло решение с основного SO.
Т.е. необходимо проделать следующее:
- Перейти в
PROJECT_ROOT\.dart_tool\chrome-device. Если папки.dart-toolилиchrome-deviceне существуют, то достаточно запустить проект в Chrome. - Внутри
PROJECT_ROOT\.dart_tool\chrome-deviceдолжна быть папкаDefault. ПапкуDeafultсо всем содержимым необходимо скопировать в новую папку, в которой будут хранится профили пользователя для тестирования работы flutter приложения. К примеру,C:\Users\MyUser\AndroidStudioProjects\FlutterWebProfiles. - Закрыть Android Studio
- Перейти в папку с установленным Flutter по пути
flutter\bin\cacheи удалить файлflutter_tools.stamp. - Перейти в
flutter\packages\flutter_tools\lib\src\webи открыть файлchrome.dart - Изменить строку
--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 в процессе перезапуска в дебаг режиме.