Size: a a a

Dart & Flutter по-русски

2021 March 26

AU

Andrey Unger in Dart & Flutter по-русски
Anatoliy Dvoryashin
кто как решил момент с тем что гугл аналитика не поддерживает null safety? понижать версию дарта не предлагать)
форк, патч и пулреквест )
источник

ЕБ

Евгений Баладжа... in Dart & Flutter по-русски
Знающие товарищи, ну помогите пожалуйста с выбором локальной СУБД для флаттера. Требования такие:
- NoSQL
- все таргеты, включая линукс и веб
- поддержка Uint8List
- поддержка наследований в дата-классах
Hive не предлагать, она не поддерживает наследование, блин, 2 рабочих дня на нее убил!!!
Вот смотрю на sembast, но непонятно - он бинарные Uint8List поддерживает?  А как с наследованием? Жалко тратить по 1 дню на каждую базу, их в пабе пара десятков )))
источник

w

wYwYw in Dart & Flutter по-русски
Всем привет. Как механизм проверки на авторизацию происходит ? Токкен нужно в кеш сохранять и потом проверять если его нет отправить на страницу логина ?
источник

w

wYwYw in Dart & Flutter по-русски
Или как ?
источник

Н

Небегай Тетут... in Dart & Flutter по-русски
wYwYw
Всем привет. Как механизм проверки на авторизацию происходит ? Токкен нужно в кеш сохранять и потом проверять если его нет отправить на страницу логина ?
https://pub.dev/packages/flutter_secure_storage
в хранилище запихни
источник

ЕБ

Евгений Баладжа... in Dart & Flutter по-русски
Стоп, а вот я подумал - hive поддерживает Map. А если я свои объекты преобразую в Map<String, Map<String, Uint8List>>, она такое сохранит без кодогенерации? Тогда это выход!!!
источник

w

wYwYw in Dart & Flutter по-русски
А хранилише это кеш ?
источник

Н

Небегай Тетут... in Dart & Flutter по-русски
если телефон выключить и включить он не пропадёт.
но работать с ним только по эвейтам
источник

w

wYwYw in Dart & Flutter по-русски
Небегай Тетут
если телефон выключить и включить он не пропадёт.
но работать с ним только по эвейтам
https://pub.dev/packages/shared_preferences я этот пакет использовал он подходит ?
источник

Н

Небегай Тетут... in Dart & Flutter по-русски
🤷‍♂️
источник

w

wYwYw in Dart & Flutter по-русски
Ладно спс бро )))
источник

w

wYwYw in Dart & Flutter по-русски
У меня просто пока асинхронный метод сработает я успеваю увидеть домашнюю страницу. В какой момент нужно перенаправление реализовывать или какую то начальную страницу придумать ?  
class HomePage extends StatelessWidget {

 _saveLoginUser(context) async {
   SharedPreferences prefs = await SharedPreferences.getInstance();
   bool status = prefs.getString('token') == null;
   if (status) {
     Navigator.pushNamed(context, '/login');
   }
 }

 @override
 Widget build(BuildContext context) {
   _saveLoginUser(context);
   return Scaffold(resizeToAvoidBottomInset: false, body: Home());
 }
}
источник

J

Juko in Dart & Flutter по-русски
Балин как запустить в MacOs ios прогу
источник

RV

Roman V. in Dart & Flutter по-русски
эмулятор поставь, если конечно у тебя не M1
источник

J

Juko in Dart & Flutter по-русски
А можна узнать какой именно
источник

J

Juko in Dart & Flutter по-русски
Через андроид студию не подучается
источник

J

Juko in Dart & Flutter по-русски
Или я крива рукий не могу
источник

ЕБ

Евгений Баладжа... in Dart & Flutter по-русски
wYwYw
У меня просто пока асинхронный метод сработает я успеваю увидеть домашнюю страницу. В какой момент нужно перенаправление реализовывать или какую то начальную страницу придумать ?  
class HomePage extends StatelessWidget {

 _saveLoginUser(context) async {
   SharedPreferences prefs = await SharedPreferences.getInstance();
   bool status = prefs.getString('token') == null;
   if (status) {
     Navigator.pushNamed(context, '/login');
   }
 }

 @override
 Widget build(BuildContext context) {
   _saveLoginUser(context);
   return Scaffold(resizeToAvoidBottomInset: false, body: Home());
 }
}
Какое странное решение. Зачем пушить новый роут, когда можно просто отобразить в методе билд страницу логина? А пока метод не сработал, крутить спиннер. FutureBuilder позволяет.
источник

w

wYwYw in Dart & Flutter по-русски
Евгений Баладжа
Какое странное решение. Зачем пушить новый роут, когда можно просто отобразить в методе билд страницу логина? А пока метод не сработал, крутить спиннер. FutureBuilder позволяет.
Кеп тебя я искал )) Отобразить страницу имеешь введу initialRoute изменить ? Я по всяким приложениям полазил и заметил что у всех есть начальный экран видимо в этот момент они проверяю на авторизацию я правильно понял ?
источник

ЕБ

Евгений Баладжа... in Dart & Flutter по-русски
wYwYw
Кеп тебя я искал )) Отобразить страницу имеешь введу initialRoute изменить ? Я по всяким приложениям полазил и заметил что у всех есть начальный экран видимо в этот момент они проверяю на авторизацию я правильно понял ?
Я стараюсь для таких вещей навигацию не использовать вообще. В build() вставляешь FutureBuilder с твоей асинхронной функцией, и показываешь в зависимости от статуса - то спиннер, то страницу логина, то хомепейдж. Это позволит корректно и безопасно обработать случай, если в процессе работы произошел разлогин.
источник