Какое разрешение использовать для общих настроек? android (флаттер) - PullRequest
1 голос
/ 21 июня 2020

Итак, я создаю страницу входа, и она отлично работает, когда я запускаю ее в эмуляторе, но когда я запускаю версию выпуска, я увидел, что добавление разрешения inte rnet в файл xml разрешает моему приложению соединение. однако я не могу найти, какое разрешение предоставить для общих настроек, так как он не входит в систему.

это часть кода:

if (jsonResponse['ErrorMesage'] != null) {
      print(jsonResponse['ErrorMesage']);
      showAlertDialog(context);
    }
    else {
      print("ok");
      sharedPreferences.setString("Token", jsonResponse['Token']);
      Navigator.of(context).pushAndRemoveUntil(
          MaterialPageRoute(builder: (BuildContext context) => Home()),
              (Route<dynamic> route) => false);
    }

вот код, используемый для проверки:

checkLoginStatus() async {
    sharedPreferences = await SharedPreferences.getInstance();
if (sharedPreferences.getString("Token") == null) {
  Navigator.of(context).pushAndRemoveUntil(
      MaterialPageRoute(builder: (BuildContext context) => MyApp()),
          (Route<dynamic> route) => false);
}
}

Ответы [ 2 ]

1 голос
/ 24 июня 2020

Итак, проблема в том, что когда вы запускаете приведенный выше код в режиме отладки, он работает нормально, но в режиме выпуска каким-то образом оператор if, который проверяет, является ли ошибка нулевым, не будет работать, потому что, по-видимому, null не поддерживается для режима выпуска . Следовательно, у меня сработало использование "" вместо null. Тем не менее, спасибо за попытку.

0 голосов
/ 21 июня 2020

SharedPrefernces не запрашивает у пользователя разрешения, поскольку это регистр пары ключ / значение. Вы можете объяснить, чего пытаетесь достичь?

...