Автозаполнение учетных данных во flutter inappWebview

Я использую плагин flutter_inappwebview для разработки браузера Android. Теперь мне нужно сохранить и автозаполнить учетные данные для разных веб-сайтов, таких как facebook, twitter и т. Д. Я узнал о безопасном хранении данных для входа с помощью плагина flutter_secure_storage, но не знаю, как это реализовать. Пожалуйста, помогите, если сможете ... Заранее спасибо!

1 ответ

flutter_secure_loginв настоящее время не поддерживает веб-платформу Flutter. В этом случае я бы рекомендовал использовать shared_preferencesнайдено здесь

Это очень похоже на безопасное хранилище и может использоваться очень похожим образом.

в следующем коде я использую его для хранения своих пользовательских данных

          // write to shared preferences
    final prefs = await SharedPreferences.getInstance();
    if (!_context.isLoggedIn) {
      if (prefs.containsKey('userData')) prefs.remove('userData');
      return;
    }

    final userData = Map<String, String>();
    userData['refreshToken'] = _refreshToken;
    userData['tenantId'] = _tenantId;
    userData['userId'] = _userId;
    await prefs.setString('userData', json.encode(userData));

Затем к нему можно получить доступ для обновления токенов.

      Future init() async {
    final prefs = await SharedPreferences.getInstance();
    final prefData = prefs.getString('userData');
    if (prefData == null) return;
    final Map<String, Object> userData = json.decode(prefData);
    _authWriter.write({
      'refreshToken': userData['refreshToken'],
      'userId': userData['userId'],
      'tenantId': userData['tenantId']
    });
    await refreshAccessToken();
}
Другие вопросы по тегам