Программирование : Dart & Flutter по-русски
Семён undefined
а что моя работа делает в списке популярных? я же её даже не шарил
.
На free аккаунте все работы открыты по дефолту
Семён undefined
это понятно, но я делал её для себя и никому не рассказывал
Anton ?? ? ??
Мне интересно где ты так научился анимировать
Семён undefined
[
{
"type": "link",
"text": "https://www.2dimensions.com/a/Laim0n/files/flare/construct-diet-animation/preview"
}
]
Семён undefined
[
{
"type": "link",
"text": "https://www.2dimensions.com/a/Laim0n/files/flare/construct-diet-animates/preview"
},
" тут допиленная есть, но там не так много просмотров"
]
Семён undefined
хотя я тоже для себя это делал
Семён undefined
сам научился
Семён undefined
просто чувство движения есть
???????
2dimension или flare?)
???????
Плюсы, минусы, подводные камни, цены
???????
Удобство с флатером
???????
Я анимацию вообще не делал (ток немношк, посмотреть)
???????
это форк? Или это один и тотже сервис или в паре работают?
Андрей Хливнюк
есть вообще адекватный кроссплатформ пакет для чтения QR?
Андрей Хливнюк
я горю, ни один не запускается без какой-нибудь залупы
???????
[
{
"type": "mention",
"text": "@Belokotov"
}
]
Андрей Хливнюк
я натив вообще не знаю, но оно мне для текущих задач и не надо
Андрей Хливнюк
писать самому не вар
Андрей Хливнюк
Qr_reader видимо
Андрей Хливнюк
ты рекламируешь (советуешь)
???????
Он разные пробывал
Андрей Хливнюк
меня просто смущает вот это
???????
Есть flutter_vision, но он навороченный
???????
А так, жди, Юра поделится опытом) Ну или пробуй)
Артем Летюшев
Привет. Тема довольно избитая наверное, но я новичок. Не подскажите как правильно заливать на плей стор приложение? Столкнулся с требованием поддержки и 32 и 64 платформ
Evgenii Egorov
[
{
"type": "link",
"text": "https://github.com/flutter/flutter/issues/18494"
}
]
Андрей Хливнюк
получается, лучше юзать
Андрей Хливнюк
чет так трудно с нормальными плагинами)
0x7172727a7a0a
почему в дроиде при нажатий бек кнопки приложения закрывается
DVS (Read The F.ng Manual) Studio (NoHello)
А почему не должно?
0x7172727a7a0a
как сделать чтобы страницу закрыть
0x7172727a7a0a
navigator.pop() сработал
Оганнес Асатрян
в андроиде если в бэк стеке ничего нет, то прилага закроется как бы. не хочешь закрывать прилагу при нажатии назад - положи че нить в бэкстек
Оганнес Асатрян
например еще один экран - активити/фрагмент
Андрей Хливнюк
[
{
"type": "mention",
"text": "@Belokotov"
},
" взял qrcode reader, под мои задачи топчик)"
]
Оганнес Асатрян
ну то есть, если ты открыл прилагу на дроиде и видишь первый экран, то ясен красен, под ним ничего нет и при нажатии назад ты выйдешь
Anton ?? ? ??
Ну экран ок, а если не хочешь экран? Как мне просто до рут скрина добраться?
Оганнес Асатрян
а если ты провалился куда-то, на другой экран и кодер сделал добавление в бэк стек, то да, при нажатии на бэк ты вернешься по стеку
Anton ?? ? ??
Чтобы не делать два раза поп у навигатора
Оганнес Асатрян
в рамках андроид я могу ответить на вопрос. а вот как там на флатере я уже не подскажу. пилил пет проект в декабре
Anton ?? ? ??
Я и в рамках айоса могу рассказать)
Оганнес Асатрян
скорей всего ровно как и в нативе должна быть либа навигации
Оганнес Асатрян
в айос же нет кнопки назад, не?
Кирилл Пешин
[
"Я использовал вот что ",
{
"type": "link",
"text": "https://inducesmile.com/google-flutter/how-to-disable-or-override-back-button-in-flutter/"
},
" просто добавил после false то куда переходить..."
]
Anton ?? ? ??
Она и не нужна
Bod9i
Жестами и кнопкой назад не выйти из приложения)
Оганнес Асатрян
в айос же должна быть такая же фигня как в андроид типа свернуть, смахнуть и чтоб не возвращаться туда, откуда смахнул?
Оганнес Асатрян
я прост тру дроид кодер, который с айосом не знаком))) от слова совсем
Artyom Nesterenko
Нет такого. Там только свернуть, через некоторое время выгружается из памяти. Или сразу открыть недавние приложения и оттуда смахнуть. Все потому, что каждое приложение отвечает за свою навигацию самостоятельно, системной кнопки назад нет.
Slava Marchenko
WillPopScope
Артем Летюшев
[
"Извините снова за беспокойство, я смог обновить проект с учётом и 32 и 64 архитектуры и выложить его в плеймаркет. В режиме отладки работает и на эмуляторе и на устройстве, но совершенно отказывается работать при скачивании из плеймаркета. Вот ссылка на приложение ",
{
"type": "link",
"text": "https://play.google.com/apps/testing/com.polytech.polymap"
},
" и трассировка"
]
Артем Летюшев
На всех устройствах одна и та же ошибка, связанная с архитектурой
Andrew Bash
[
{
"type": "link",
"text": "https://github.com/flutter/flutter/issues/19865"
},
" смотрел?"
]
Артем Летюшев
Это не помогло
Артем Летюшев
Я пытаюсь опубликовать приложения под различные платформы разными релизами, но Гугл требует чтобы apk или aab были сразу на обе
Combot
[
{
"type": "mention_name",
"text": "Vladislav Nikiforov",
"user_id": 790145972
},
" has been banned! Reason: ",
{
"type": "text_link",
"text": "CAS ban",
"href": "https://combot.org/cas/query?u=790145972"
},
"."
]
Олжас Сулеймен
а есть плагины для дарта в kate & kdevelop? подсветка например
northelks
ых, слёзы ностальгии, когда увидел эти тёплые названия редакторов))
olzhas tatagulov
Я тут чатик делаю на флаттере. Стандартый ListView.builder позволяет указать только одно направление для скролинга, а мне нужно в обе стороны. Что бы можно скролить как и к новым записям так же и к старым. Как это сделать?
olzhas tatagulov
child: ListView.separated( reverse: true, itemCount: listItem.itemCount, itemBuilder: (context, index) { if (index < listItem.items.length) { return buildItem(listItem.items[index],myUserId); } else { getMoreData(); return Center(child: CircularProgressIndicator()); } }, separatorBuilder: (BuildContext context, int index) { return Container( height: 10, ); }, ),
olzhas tatagulov
Вот такой механизм скролинга сейчас я использую.
olzhas tatagulov
Он загружает последние сообщения.
Denis Dubov
Ребят, а смотрите хотел бы посоветоваться, есть авторизация jwt, которая возвращает токен, в моб. приложениях эти данные где храняться? какая схема? Я получил токен например сохранил в БД. в след. раз я чекаю БД и ответ с апи если совпали загружаю экран или как правильно?
dmitry isachenkov
Ну вообще как напишешь) я храню токен в sharedprefs и при старте кидаю запрос на получение юзера по токену, в это время крутится загрузчик стартовый, а потом в зависимости валидный токен или нет и ответ пришел, я показываю либо хоме скрин или скрин авторизации
dmitry isachenkov
В sharedprefs токен стрингой храню) правда у меня не jwt
Denis Dubov
Спасибо, за совет!??
Ivan Sidorov
Всем привет! Есть SmartRefresher из пакета pull_to_refresh. В чайлде у него ListView, который создается через билдер. С ним никаких проблем нет. Неободимо заменить ListView на AnimatedList. С AnimatedList айтемы по какой-то причине не создаются (не вызывается метод создания айтемов в айтем билдере). itemBuilder для обоих листов тот же. Сталкивался кто-нибудь с такой проблемой?
bitizen
[
"Подскажите, как отображать modal bottom sheet поверх Cuppertion Tab Bar? Если я правильно понял, нужно просто дать контекст на уровне ",
{
"type": "code",
"text": "CupertinoTabScaffold"
},
", но как его не костыльно получить?"
]
???????
[
{
"type": "mention",
"text": "@bunopus"
}
]
Evgenii Egorov
Кто-нибудь пользовался либой flutter_apns?Она вообще рабочая?
bitizen
firebase_messaging пробовал?
Антон Шевелёв
Ребят, подскажите пожалуйста. Как можно слать пуши при выключенном приложении не используя сервисы гугла?
Антон Шевелёв
На обе платформы само собой...
Evgenii Egorov
мне нужно без прослойки файрбэйса,напрямую к apns
Антон Шевелёв
Эти пуши можно настроить так, чтобы они вели на определенную страницу в приложении?
Evgenii Egorov
вроде да,не уточнял.Просто других пушей в принципе нет
Evgenii Egorov
либо файрбэйс либо уансигнал
Антон Шевелёв
Ок. Спасибо ??
Sergey Lavinov
Никто не сталкивался с таким? По дереву картина такая: MyScreen (StatelessWidget) |-Stack |- ListView |- MyAnimatedHeader (StatefulWidget) В скрине объявлен ScrollController, который скармливается в ListView и как пропса падает в MyAnimatedHeader. Там на него вешается слушатель, а сам контроллер передается в AnimatedBuilder. Проблема собсна в том, что вся эта идилия работает только до первого ребилда, после чего слушатель onScroll просто не вызывается. Никто не сталкивался?
???????
Сделать то что хочешь?
???????
Чем тебе листвью со сливерами не угодил?
Sergey Lavinov
Сворачивающийся хедер с милыми анимациями
???????
Ну вот в листвью его и попробуй засунуть.
???????
Вроде стэк тут лишний выходит.
Sergey Lavinov
Я их чот побаиваюсь. Переделанная имплементация из флаттер галереи неплохо так теряла кадры
Sergey Lavinov
+ сливеры массивные какие-то, пахнет оверхедом. Думал велик будет проще и быстрее)
???????
Я прост правда не вижу зачем тут нужен стэк
???????
Сделать можно по разному, но стэк какт вообще не в тему)
Sergey Lavinov
Почему стек лишний? Если они будут идти последовательно, то получается, что при скролле, когда будет уменьшаться хедер, будет сдвигаться и ListView, сдвигаться в том числе и относительно пальца, и появится неожиданное поведение
Sergey Lavinov
Или во флаттере это не так работает?
???????
Ты точно не путаешь Flex со Stack?)
Sergey Lavinov
Да, я знаю, спасибо
Sergey Lavinov
Если хедер над ListView то его изменения никак не повлияют на лист
Sergey Lavinov
Хрен знает, может во флаттере таких бед нет, но с RN осталась фобия, когда изменение какого-то объекта двигает ScrollView, пока ты листаешь, и получается дичь
Sergey Lavinov
Попробую кароч со сливерами еще раз разобраться
Vadim Lukichev
Если что, listview на sliverах построен. Одна прекрасная дама, Эмили из flutter team, даже придумала этому название FOS - FearOfSlivers))
Sergey Lavinov
Про то, что он на сливерах построен знаю, но сдается мне там (ListView) все оптимально. А если делать что-то кастомное без понимания того, что делаешь, можно насрать в код. Поэтому да, у меня FOS)
Sergey Lavinov
Блин, все было бы проще, если бы контроллер не терял слушателя после ребилда :с
???????
Ну так вынесите его за билд.
???????
или заного слушайте
Sergey Lavinov
Он не в билде, в том-то и проблема
Yuriy
захерячь в лисвью статик кей
Sergey Lavinov
По запросу "Flutter Static Key" Google молчит как партизан :с
Yuriy
та не, статик всмысле не меняющийся
Yuriy
обычный кей от стринги которая не меняеться
Sergey Lavinov
Нашел только что иное решение. А заодно понял природу проблемы
Sergey Lavinov
Очень хорошую вещь предложил, ща проверю
Sergey Lavinov
Ан нет, это не помогло
Karen
привет всем. кто знает способ отзеркалить фотографию во флаттере?
Yuriy
трансформ? если не подходит то dart:ui
Sergey Lavinov
Кароч если вдруг кто болел за меня и очень сильно переживал: Так как родительский компонент был StatelessWidget, то при пересоздании контроллер тоже пересоздавался, а хедер (который Stateful) не менял состояние и слушал старый (уже мертвый) контроллер
Анатолий
мы болели, честно
admin
[
"попробуй через ",
{
"type": "link",
"text": "https://api.flutter.dev/flutter/widgets/Transform-class.html"
},
""
]
cyber mason
гайс, а чем async* от async отличается?
DVS (Read The F.ng Manual) Studio (NoHello)
async* возвращает Stream. В нем можно делать yield
cyber mason
не могу представить как это можно заюзать но спасибо. пойду гуглить
Artyom Nesterenko
[
{
"type": "link",
"text": "https://dart.dev/guides/language/language-tour#generators"
}
]
Artyom Nesterenko
Генераторы это.
Artyom Nesterenko
Бесконечные последовательности.
cyber mason
а ну за генераторы шарю
cyber mason
а все кажись дошло
Яўген
Всем привет! Только начинаю разбираться в теме и пытюсь запустить тестовое приложение. Но, хоть я и запустил эмулятор, все равно flutter его не видит... windows 8.1, android studio. Может кто сталкивался с проблемой?
Stas Buldakov
Тебе нужно в PATH прописать путь до Android SDK
Тимур
[
"Парни, разбираюсь с Aqeduct, не могу понять как делать простейший join, прошу помощи!\nНужно сделать простой запрос\n",
{
"type": "pre",
"text": " \nselect * from product a, product_barcode b\n where a.productid = b.productid",
"language": ""
},
"\nКласс Product\n",
{
"type": "pre",
"text": "class Product extends ManagedObject implements product {}\n\nclass product {\n @primaryKey\n int productid;\n\n String rusname;\n String engname;\n\n ManagedSet products;\n}",
"language": ""
},
"\nКласс Product_barcode\n",
{
"type": "pre",
"text": "Class Product_barcode extends ManagedObject\n implements product_barcode {}\n\nclass product_barcode {\n @primaryKey\n int productid;\n\n String barcode;\n\n @Relate(#products)\n Product product;\n}",
"language": ""
},
"\n\nЗапрос для Join\n",
{
"type": "pre",
"text": " @Operation.get()\n Future getProducts() async {\n final productQuery = Query(context)..join(set: (a) => a.products);\n final res = await productQuery.fetch();\n\n return Response.ok(res);\n }",
"language": ""
},
"\nAqeduct ругается что нет поля product_productid \n\nЧто я делаю не так?"
]
Vishnyakov Aleksey
пуши для дройда только через файрбэйс хочешь своего провайдера - нужно рутованное устройство и туда зашивать аналог (есть опенсорсные)
Artyom Nesterenko
Я бы сделал запрос с JOIN.
Тимур
[
{
"type": "mention",
"text": "@artnester"
},
" Можно подробней? Я вроде JOIN и делаю"
]
Artyom Nesterenko
[
"Вы делаете implicit join для выборки из двух таблиц, и вообще плохо такую нотацию использовать, насколько я знаю.\nЯ имел в виду типа такого:\n",
{
"type": "pre",
"text": "SELECT *\n FROM product \n INNER JOIN product_barcode ON product.productid=product_barcode.productid;",
"language": ""
},
""
]
Artyom Nesterenko
P.S.: В Aqeduct не шарю.
Тимур
[
{
"type": "mention",
"text": "@artnester"
},
" в том и проблема, как сделать в SQL я знаю, а в Aqeduct что-то неправильно делаю"
]
KDVMan
подскажите пожалуйста, работаю с библиотекой Dio (http клиент) отправляю из интерсептора onError свой класс, например: return MyClass(); в catch ошибки проверяю тип: catch (error) { print('TYPE: ${error.runtimeType}'); пишет: TYPE: DioError хотя должно быть MyClass подскажите, как правильно проверить тип и получить MyClass?
Karen
у кого-то было, что фотки с фронталки отзеркаленные получаются?
Artyom Nesterenko
А разве это не от камеры телефона зависит? А точнее, от реализации Camera API производителем.
Karen
я тоже так думал. но фоткал и на самсунг и на айфон -- оба такие
?? ???????
Всех приветствую друзья ! Тут у нас дебаты по поводу флютера, и предвзятое отношение к флютеру некоторых разрабов) накидайте плюсов и минусов
Artyom Nesterenko
Первый минус: плохая кастомизация индивидуального дизайна проекта или что?
Vladimir Kozhevnikov
Я думаю вам в паблик .net
DVS (Read The F.ng Manual) Studio (NoHello)
4 минус - чушь
DVS (Read The F.ng Manual) Studio (NoHello)
прямо сейчас сдаем мультимагазин на флаттере
Vladimir Kozhevnikov
Да там минусы все чушовые
Artyom Nesterenko
В каком месте здесь у Flutter минус, если это его главный плюс?
DVS (Read The F.ng Manual) Studio (NoHello)
гыг. особенно про язык порадовало )
Artyom Nesterenko
Кастомизация дизайна так, как надо вам.
?? ???????
Есть встроенные покупки ? Apple Pay ?
DVS (Read The F.ng Manual) Studio (NoHello)
внешний эквайринг
DVS (Read The F.ng Manual) Studio (NoHello)
отдавать 30% маркетам - совсем такое
DVS (Read The F.ng Manual) Studio (NoHello)
+ у нас продажа реальных объектов, поэтому яблочный магаз не будет возникать
(;?_?) Ivan Zhuravlev ???>?
iap плагин гугл пилит. буквально на последней конференции его анонсили
Artyom Nesterenko
Интересно, этот минус из пальца специально высасывали?
Artyom Nesterenko
Или на чем он вообще основан?
(;?_?) Ivan Zhuravlev ???>?
дотнетчики же
Vsevolod
так нравится фраза про мертвый язык с учетом того что дарт по всем рейтингам растет а шарп стабильно падает
?? ???????
кросплатформенная разработка происходит быстро из-за большого количества написанных заранее модулей, но соеденить их вместе задача зачастую не тривиальная
?? ???????
в пятерке худших
Vladimir Abramov
Не понял. А в нативе что без модулей пишут готовых?
?? ???????
при том на первом из худших
?? ???????
если плюсы обоснуете ребята буду только рад
Vsevolod
а теперь анализ поглубже сделайте по разным рейтингам и тенденцию посмотрите
DVS (Read The F.ng Manual) Studio (NoHello)
с 19 год посмотрет не ходите?
DVS (Read The F.ng Manual) Studio (NoHello)
[
{
"type": "link",
"text": "https://www.codementor.io/blog/worst-languages-2019-6mvbfg3w9x"
}
]
DVS (Read The F.ng Manual) Studio (NoHello)
и сравните динамику 18->19
Александр
Я вообще не понимаю какой смысл оценивать язык, если он средство для программирования, и вообще всё индивидуально для каждой задачи
northelks
плохим танцорам и кроссовки адидас оригинальные будут неудобны ??
DVS (Read The F.ng Manual) Studio (NoHello)
тут уже членомерка просто
?? ???????
на работе холиварим думал и вас подключить )
northelks
нельзя заставить разработчика заниматься нелюбимым делом, если он не любит флаттер или невзлюбил его - у вас ничего не получится)
Sergey Lavinov
+ Очень приятно писать + Классные вещи можно написать реально быстро + Очень легко сверстать вообще что угодно + С анимациями работать - бальзам на душу + Дарт милый - За производительностью нужно постоянно следить. чтобы не терять кадры - Молодой, не везде есть необходимые плагины (с картами неуютно, например)
northelks
пускай пишут на том, в чём они спецы
northelks
это всё бесконечное перетягивание канатов и дебатов, когда две стороны всё равно остаются при своём мнение и решается данный вопрос только третьей стороной, босом и другим руководящим словом
?? ???????
+ css +html +js + Дарт мертвый
Sergey Lavinov
Вообще не понял первые 3 пункта. При чем тут веб-стек?
DVS (Read The F.ng Manual) Studio (NoHello)
это от вас человек прилетел?
Vsevolod
студия под мак норм?
Vsevolod
это про разработку
Sergey Lavinov
Ну слушай, винда еще и на телефонах с планшетами запускается, поэтому да, кросплатформа)
Vsevolod
а ну тогда вопросов больше не имею)))
?? ???????
да здравствует срач
Vsevolod
студия только под винду нормальная
Vsevolod
ну да 10 лет всего в разработке из них 4 в .net и последние два core куда уж мне
Vsevolod
ну я же сказал что вопросов больше не имею к тебе
|