Flutter | فلاتر
2.57K subscribers
207 photos
34 videos
32 files
575 links
لینک گروه برای اشتراک منابع و یادگیری فلاتر
https://t.me/joinchat/EOllGEqgbASbAHtD03cXTA
حمایت از کانال:
idpay.ir/fluttery

انتقاد ،پیشنهاد،نوشتن مطلب:
@h_noroozi_t_96
@ni30000
Download Telegram
سلام
#نکته_آموزشی

اندروید ۱۲ جدیدا اومده و احتمالا اپ هاتون دیگه کلا روش نصب نمیشه
پس بهتره زودتر ی نسخه جدید بدین

#راه_حل
کارهای لازم داخل منیفست

داخل تگ mainActivity

android:exported="true"

و هر گونه receiver یا بک گراند سرویسی هم دارین باید این تگ قرار داده بشه
لازم به ذکره توی receiver علاوه بر اون تگ، تگ پایین هم نیازه
tools:replace="android:exported"

شاید داخل بک گراند سرویس ها هم نیاز باشه، چون نداشتم تستش نکردم:)
و نکته دیگه اینکه میتونید پکیج اندروید رو مجزا باز کنید تا خود اندروید استادیو پیشنهاد بده کدوم قسمت ها تگ اولی رو نیاز دارن


مورد بعد اینکه توی بادی تگ main activity متا دیتا مرتبط به فلاتر اسپلش لانچ بک گراند رو نیز حذف کنید(فلاتر ورژن ۲/۵ به بالا)
👍23🔥4
Forwarded from Pure Coder
💊 Capsule

Dart 2.17
enums with members

#dart
#capsule
👍7🔥2
سلام

دوستان به 5 تا 6 نفر نیاز دارم جهت نوشتن یک نرم افزار همگی در خود نرم افزار حق سهم خواهند داشت

دوستانی که تمایل دارند و شرایط زیر رو دارند لطفا به ایدی که میزارم پیام بدن


شرایط
تسلط بر فلاتر و دارت
تسلط بر Getx یا Bloc
امکان تست نویسی
آشنایی به MVVM
داشتن زمان کافی جهت همکاری
اشنایی به git

@MWDeveloper
👍82🔥2
سلام
با وجود اینکه خودم پروژه های اخیرم رو از getX استفاده کردم ولی اذیت کاریش توی دوتا قسمت دیگه کلافم کرده:)
حالا میخواستم بحث کنیم و بدونم شمام این مشکل رو دارین یا من نادرست کد میزنم یا ..


#مشکل_۱
دو حالت نویگیت کردن توی پیج داره یک معمولی کلاس رو بدین
Get.to(UrClass())
دو به صورت کال بک
Get.to(()=>UrClass())
با وجود اینکه خودش دومی رو پیشنهاد میده ولی من دیدم که هر کدوم توی ی حالت هایی ممکنه کار نکنن و خیلی هم غیر منطقی نیس بالاخره وقتی context گلوبال در نظر بگیری این داستان ها هم جلو رات سبز خواهد شد :)


اما #مشکل_۲ که این واقعا رو‌ مخه(یعنی میشه مشکل ۱ رو ی طورایی هندل و نادیده گرفت)
ی سناریو ساده در نظر بگیرید وقتی که میخوایید logoutکنید کاربر رو، طبیعتا لازمه اطلاعات یوزر یا بهتر بگم کنترلر یوزر reset بشه خب به نظر من بهترین راه Get.deleteهست که خیالم راحت باشه، که توی همین سناریو طبیعتا کاربر رو پرت میدین توی صفحه لاگین و خب طبیعتا کنترلر یوزر رو دوباره باید Get.put کنید ، اماااا مشکل اینجاس که توی صفحه دیگه(صفحات داخلی) یا همون صفحه با ارور اینکه این کنترلر رو پیدا نمیکنه getX برخورد میکنید و اونجاس که حرصتون میگیره و میگید چراا😤

حالا شما بگین ، شاید من نادرست کد میزنم.
👍52🔥1
Forwarded from Pure Coder
👍1🏆1
برنامه نویس Flutter در سطوح Mid-Level یا Senior
مدل
همکاری: دورکاری (ساعت کاری شناور)


سابقه قابل بررسی برای Mid-level: بیشتر از سه سال (حداقل یک سال تجربه فلاتر)
سابقه قابل بررسی برای Senior: بیشتر از شیش سال (حداقل دو سال تجربه فلاتر)

شرح شغل:
- پیاده سازی اپلیکیشن محتوا محور (ویدئو،صوت،تصاویر)

نیازمندیهای فنی:
- داشتن حداقل یک اپلیکیشن با کیفیت منتشر شده در گیت یا استورها
- ️تسلط به دیزاین پترن ها
- تسلط به Solid, DRY, KISS
- تسلط به مدیریت استیت GetX
- آشنا به MVC
- درک درست از ساختار Widget ها در فلاتر
- درک درست و تجربه کار با Rest, Socket
- تجربه کار بر روی Super App (مزیت)
- تجربه کار بر روی Web App و PWA (مزیت)

نیازمندی های عمومی:
- داشتن اخلاق حرفه ای
- درک درست از فرهنگ اجایل
- علاقه مند به کار گروهی و درک درست از کار گروهی
- آشنا به Jira, Slack و فرهنگ ریموت آفیس
- تعهد به اسپرینت ها

ارسال رزومه به آیدی
@ahengine
👍9👎4
Forwarded from Pure Coder
🔥Adaptive UI

🟢همون طور که میدونیم با فلاتر میتونیم برای پلتفرم های مختلف مثل وب، اندروید، ویندوز و... برنامه بنویسیم و از این رو برنامه ما ممکنه توی پلتفرم های مختلف یا اسکرین های مختلف (با سایزهای متفاوت) ران بشه.

🔥نکته ای که اهمیت پیدا میکنه این هست که برنامه انعطاف پذیر باشه و بتونه خودش رو با همه این شرایط وفق بده.

مثلا :
✔️تغییر چینش عناصر در سایزهای مختلف (سایز گوشی و دسکتاپ و....)
✔️استفاده از زبان طراحی مختلف در پلتفرم های مختلف
✔️ردیابی حرکات موس در پلتفرم های دسکتاپی
✔️و...

🔥برای این موضوع پکیجی با نام flutter_adaptive_ui طراحی کردم.

https://pub.dev/packages/flutter_adaptive_ui

🔥پکیج رو بررسی کنید و نظرات و باگ های احتمالی رو بگید. 🙏

❤️❤️لطفا پکیج رو توی pub لایک کنید.❤️❤️

🔥در صورت تمایل میتونید در توسعه پکیج مشارکت کنید.
👍17🔥4
Forwarded from MVVM Tutorial
Media is too big
VIEW IN TELEGRAM
دوره آموزشی MVVM - قسمت اول
👍41
Forwarded from MVVM Tutorial
Media is too big
VIEW IN TELEGRAM
دوره آموزشی MVVM - قسمت دوم تبدیل پروژه ساده کانتر به mvvm
👍42👎1
رفع مشکل نام خلیج فارس در پکیج فلاتر مپ(flutter_map)

https://virgool.io/@j.zobeidi/رفع-مشکل-نام-خلیج-فارس-در-پکیج-فلاتر-مپfluttermap-jghdubxuupqx
👍156👎1
سلام دوستان
دوباره اومدم ی نکته بگم که باهاش دست و پنجه نرم کردم و الان حل شد 😍


داستان مرتبط به shared preference هست

تقریبا ی چیزایی توی نت دیدم ولی نه دقیق (شاید بد سرچ زدم:)

ولی خب اینجا باشه برا همه و آیندگان:)

اینکه قبل از ران شدن متریال و نرفتن به فریم بعدی سعی نکنید چیزی داخل پرفرنسز ذخیره کنید(مخصوصا تست من روی pwa بود و داستان خاص خودش رو داره که این نکته مهمی بود و ی نصف روز منو درگیر کرد:)

اگر ذخیره کنید و همون موقع هم بهتون برگردانده بشه و فکر کنید همه چی رواله، باید بگم اینطور نیست و به ازای instanceدیگه گرفتن از پرفرنسز همه چی میپره، پس دقت کنید برای پروژه هاتون اگر لازم شد این کارو کنید، همین بزارین مرحله اسپلش

پ.ن : برای مسأله من، مجبور بودم قبل اسپلش این کارو کنم که هر کار کردم نشد و ایده هندل کردنش رو تغییر دادم.
👍13🔥2👎1
Flutter | فلاتر
سلام با وجود اینکه خودم پروژه های اخیرم رو از getX استفاده کردم ولی اذیت کاریش توی دوتا قسمت دیگه کلافم کرده:) حالا میخواستم بحث کنیم و بدونم شمام این مشکل رو دارین یا من نادرست کد میزنم یا .. #مشکل_۱ دو حالت نویگیت کردن توی پیج داره یک معمولی کلاس رو بدین…
#GetX

خب میخوام ی مشکل (باگ) دیگه از GetX رو براتون بگم:))

ی مدت پیش بود که مشکل کانفلیکت استیت برای یکی از پروژه ها پیش اومده بود، داستانش از این قرار بود که باتم نویگیشن میبایست در تمامی صفحهات حضور داشته و داستان نستد نویگیتور یا استک ایندکس و این داستانا

حالا صفحه ای داشتیم که لاجیک توی کنترلر گت ایکس و صفحه هم که توی تب های مختلف باتم نوو ممکن بود هم زمان بالا بیاد و خب کانفلیک استیت میخوردیم، به هر حال در نهایت تصمیم گرفتیم، استیت فول کنیمش و موارد مرتبط به لاجیک توی کلاس جدا، ولی خب به ازای بالا اومدن این صفحه ی دونه جدید از اون کریت بشه و خب مشکلم حل میشد.

تا اینجا داستان رو مقدمه چینی کردم، حالا خود این صفحه ی سری ویجت ها (صفحات)خارجی هم داخلش بودن که با کلیک کردن روی ی آیتم خاصی از اون ویجت های خارجی ی چیزی توی این صفحه بیس باید آپدیت میشد که گفتیم خب این صرفا با متد update() گت ایکس کارمون راه میوفته و اومدیم گت بیلدر رو زدیم و با کال بک اون کلیک کردن رو رسوندیم به گوش این صفحه و در نهایت آپدیت! اماااا اینجاس داستان که توی این صفحه ( صفحه درازی بود :) از NestedScrollView به دلیل مرتبط به خودش استفاده شده بود و اون آیتم کلیک شده که از ویجت ها خارجی بود معمولا پایین صفحه بود، حالا اگر اون قسمت بالا صفحه اصلی که قرار بود آپدیت بشه ، با اسکرول کامل خارج میشد ، بعد روی آیتم مرتبط کلیک میشد، آپدیت انجام میشد اما اگر آیتم با اون قسمت تاپ توی صفحه جا میشدن و کلیک میکردیم، آپدیت اتفاق نمیوفتاد مگر خودمون ی اسکرول کامل پایین بالا میکردیم😐(داخل پرانتز که انیمیشن اتوماتیک بالا اومدن اسکرول با کلیک کردن هم داشتیم)


خلاصه که هیچ جوره نشد درست بشه و آپدیت کنیم، تهش به بچه ها گفتم برین برای این تنها مورد هم که کلا این صفحه دیگه وابسته به Get نباشه از ValueNotifier استفاده کنید و مشکل کامل حل شد.


خلاصه که جالب بود برا ما😃

حسین اسدی، قربان شما خدافظ (راوی جالب میگه:))
👍9
Forwarded from MVVM Tutorial
Media is too big
VIEW IN TELEGRAM
دوره MVVM فسمت سوم دریافت اطلاعات از API و نمایش در نرم افزار با استفاده از مغماری mvvm
👍2
Forwarded from Pure Coder
PYsvgTz.png
2 MB
🔥Design Patterns🔥

#capsule
👍3
Forwarded from Microfrontend.ir
کاربرد InheritedWidget در Flutter

در ششمین ویدیو از سری آموزش State Management در Flutter به بررسی کاربرد InheritedWidget در Flutter پرداختیم. یکی از اصلی ترین روش‌هایی که State Management در فلاتر Lift up کردن State است. به این معنی که State را به بالاترین سطح مورد نیاز خود بالا بکشیم و آن را با تمام فرزندان درخت یا یا بخشی از درخت به اشتراک بگذاریم. فلاتر این امکان را از طریق InheritedWidget به برنامه نویس ارایه می‌دهد. درک InheritedWidget کلید درک سایر رویکردهای State Management در اکوسیستم فلاتر است.


Link: https://youtu.be/sfqfkTCFQ1A

PlayList: https://youtube.com/playlist?list=PLJ9zDGwhhsBwoDOzFdlHBa6H7w8ExoeKV
〰️〰️〰️〰️〰️
© @microfrontend_ir
🔥4👍3