Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Flutter
Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎ
Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ½Π°Ρ
Π’Π΅Ρ
Π½ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅ Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° UI/UX ΠΈ Flutter Frontend-ΠΏΡΠΎΡΠΎΡΠΈΠΏΠ° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΠ±ΡΠ°Ρ Π·Π°Π΄Π°ΡΠ° Π’ΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Flutter (ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° UI/UX + Flutter), ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠΉ ΠΏΡΠΎΡΠΎΡΠΈΠΏ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ° ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΡΡΠ°ΠΏΠ΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠ° ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎΠ½ΡΠ΅Π½Π΄-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ. Backend, API, Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
, ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ
ΡΠ΅ΡΠ²ΠΈΡΠΎΠ², Π±ΠΈΠ·Π½Π΅Ρ-Π»ΠΎΠ³ΠΈΠΊΠ° ΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ½Π°Ρ ΡΠ°ΡΡΡ Π² ΠΎΠ±ΡΠ΅ΠΌ ΡΠ°Π±ΠΎΡ Π½Π΅ Π²Ρ
ΠΎΠ΄ΡΡ. ΠΠ΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΊΠ°ΠΊ Π³ΠΎΡΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΄ΡΠΊΡ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΎΠΉΡΠΈ Π²Π΅ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΡΡΠ΅Π½Π°ΡΠΈΠΉ ΡΠ΅ΡΠ΅Π· ΠΊΠ»ΠΈΠΊΠ°Π±Π΅Π»ΡΠ½ΡΠ΅ ΡΠΊΡΠ°Π½Ρ. Π§ΡΠΎ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ UI/UX ΠΠΎΠ»Π½Π°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π΄ΠΈΠ·Π°ΠΉΠ½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ: * Π²ΡΠ΅ ΡΠΊΡΠ°Π½Ρ; * Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΊΡΠ°Π½Π°ΠΌΠΈ; * ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°; * ΡΠΎΡΠΌΡ Π²Π²ΠΎΠ΄Π°; * Π²ΡΠΏΠ»ΡΠ²Π°ΡΡΠΈΠ΅ ΠΎΠΊΠ½Π°; * ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ; * Π·Π°Π³ΡΡΠ·ΠΎΡΠ½ΡΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ; * ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ; * ΠΏΡΡΡΡΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΡΠΊΡΠ°Π½ΠΎΠ²; * onboarding; * Π°Π΄Π°ΠΏΡΠ°ΡΠΈΡ ΠΏΠΎΠ΄ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡ ΡΠΊΡΠ°Π½ΠΎΠ². Flutter Frontend ΠΠ΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ: * Π²ΡΠ΅ ΡΠΊΡΠ°Π½Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ; * Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΊΡΠ°Π½Π°ΠΌΠΈ; * ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΡ; * ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ; * ΡΠΎΡΠΌΡ; * Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠΎΠΊΠΎΠ²ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅; * Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠΈ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ; * Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π΄Π»Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅Π³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ backend. Backend ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ. ΠΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π·Π°Π³Π»ΡΡΠΊΠ°ΠΌΠΈ. ΠΠ½ΠΈΠΌΠ°ΡΠΈΠΈ Π’ΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
Π°Π½ΠΈΠΌΠ°ΡΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°: * ΠΏΠ»Π°Π²Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΊΡΠ°Π½Π°ΠΌΠΈ; * Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ°; * Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ ΠΊΠ°ΡΡΠΎΡΠ΅ΠΊ; * Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ ΠΊΠ½ΠΎΠΏΠΎΠΊ; * Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠΈ; * ΠΌΠΈΠΊΡΠΎΠ°Π½ΠΈΠΌΠ°ΡΠΈΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°; * Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ΅ΡΡΠ° ΠΈ ΡΠ΅ΠΉΡΠΈΠ½Π³ΠΎΠ²; * Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ onboarding-ΡΠΊΡΠ°Π½ΠΎΠ². 3D-Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ ΠΈ Π³ΡΠ°ΡΠΈΠΊΠ° Π ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ
3D-ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°. ΠΠ΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠΌΠ΅ΡΡ ΠΎΠΏΡΡ ΡΠ°Π±ΠΎΡΡ Ρ: * Rive; * Spline; * Lottie; * Π»ΠΈΠ±ΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΠΌΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ. ΠΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ: * ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Π³ΠΎΡΠΎΠ²ΡΡ
3D-ΡΡΠ΅Π½; * Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΡ
3D-Π°Π½ΠΈΠΌΠ°ΡΠΈΠΉ; * Π°Π½ΠΈΠΌΠ°ΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΈ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°; * ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π΄ΠΎΡΠ°Π±ΠΎΡΠΊΠ° ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ
3D-ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ². ΠΠ°Π»ΠΈΡΠΈΠ΅ ΠΎΠΏΡΡΠ° ΡΠ°Π±ΠΎΡΡ Ρ 3D-Π³ΡΠ°ΡΠΈΠΊΠΎΠΉ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎΠΌ. ΠΠ°ΡΡΠ° ΡΠΊΡΠ°Π½ΠΎΠ² Π ΡΠ°ΠΌΠΊΠ°Ρ
ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΉ ΠΊΠ°ΡΡΠ΅ ΡΠΊΡΠ°Π½ΠΎΠ². ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΊΡΠ°Π½ΠΎΠ² β ΠΎΠΊΠΎΠ»ΠΎ 40 Ρ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠΌΠΈ ΡΠ°Π·Π΄Π΅Π»Π°ΠΌΠΈ ΠΈ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΉ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠ΅ΠΉ. Π€ΠΈΠ½Π°Π»ΡΠ½Π°Ρ ΡΡΡΡΠΊΡΡΡΠ° ΡΠΊΡΠ°Π½ΠΎΠ² Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π½Π° ΠΈΡΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Ρ ΠΏΠΎΡΠ»Π΅ Π½Π°ΡΠ°Π»Π° ΡΠ°Π±ΠΎΡΡ. Π’Π΅Ρ
Π½ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ Π‘ΡΠ΅ΠΊ: * Flutter * Dart ΠΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎ: * Riverpod / Bloc * GoRouter / AutoRoute * Clean Architecture Π»ΠΈΠ±ΠΎ Feature-based Architecture GitHub Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π²Π΅Π΄Π΅ΡΡΡ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅ΡΠ΅Π· GitHub Π·Π°ΠΊΠ°Π·ΡΠΈΠΊΠ°. Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ: * ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠΌΠΈΡΡ; * ΡΠΈΠΊΡΠ°ΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ΅ΡΡΠ° ΠΏΠΎ ΡΡΠ°ΠΏΠ°ΠΌ; * Π²Π΅ΡΡ ΠΊΠΎΠ΄ Π·Π°Π³ΡΡΠΆΠ°Π΅ΡΡΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π·Π°ΠΊΠ°Π·ΡΠΈΠΊΠ°; * ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ Π·Π°ΠΊΠ°Π·ΡΠΈΠΊΡ. Π§ΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Π½Π° Π²ΡΡ
ΠΎΠ΄Π΅ ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ: * ΠΏΠΎΠ»Π½ΡΠΉ Flutter-ΠΏΡΠΎΠ΅ΠΊΡ; * ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄; * ΠΊΠ»ΠΈΠΊΠ°Π±Π΅Π»ΡΠ½ΡΠΉ ΡΠ°Π±ΠΎΡΠΈΠΉ ΠΏΡΠΎΡΠΎΡΠΈΠΏ; * Π²ΡΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠΊΡΠ°Π½Ρ; * Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΊΡΠ°Π½Π°ΠΌΠΈ; * Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ; * 3D-ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ (Π΅ΡΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ); * Android APK Π΄Π»Ρ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΈ; * ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΏΠΎ Π·Π°ΠΏΡΡΠΊΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°. Π ΠΎΡΠΊΠ»ΠΈΠΊΠ΅ ΡΠΊΠ°Π·Π°ΡΡ * ΠΎΠΏΡΡ Flutter-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ; * ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ; * ΠΏΡΠΈΠΌΠ΅ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΡ
UI; * ΠΏΡΠΈΠΌΠ΅ΡΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΉ; * ΠΎΠΏΡΡ ΡΠ°Π±ΠΎΡΡ Ρ Rive / Spline / Lottie; * ΡΡΠΎΠΊΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ; * ΡΡΠΎΠΈΠΌΠΎΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΠ°ΠΆΠ½ΠΎ: ΠΠ° Π΄Π°Π½Π½ΠΎΠΌ ΡΡΠ°ΠΏΠ΅ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ, API, Π±Π°Π· Π΄Π°Π½Π½ΡΡ
ΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΉ. ΠΠ΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΉ frontend ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΡΡΠΎΠ²Π½Ρ Π³ΠΎΡΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡΠ°.
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Flutter
Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎ
Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ½Π°Ρ
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠΈΡΠ½Π΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π±Π΅Π³ΡΠ½ΠΎΠ². ΠΡΡΡ mvp SwiftUI Π½ΡΠΆΠ½ΠΎ Π½Π° flutter ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠ°ΡΡ ΠΈ Π΄ΠΎΡΠ°Π±ΠΎΡΠ°ΡΡ.
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Flutter
Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎ
Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ½Π°Ρ
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ ΡΠ°Π±ΠΎΡΡ ΠΎΡΡΠ»Π°ΠΉΠ½ ΠΈ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ Π² ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°Ρ
, ΠΏΠ»ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ
Huawei Π±Π΅Π· ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ google services. Π ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ΅ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΠΌ ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΡΠΉ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ ΠΠ°Π΄Π°Π½ΠΈΠ΅ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ ΠΎΠΏΠΈΡΠ°Π½ΠΎ ΡΡΡ: https://docs.google.com/document/d/1CYOrVZt1e3YRnAU2DQ-R4KOApYoB0zpYXWcqYEC1BPY/edit?usp=sharing ΠΠ°ΠΊΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅ΡΠΎΠΌ: https://www.figma.com/design/xVxsRJPb4M9Z7CXzg9TtEV/%D0%9F%D1%80%D0%BE%D0%BF%D0%BE%D0%B2%D0%B5%D0%B4%D0%B8.%D1%80%D1%84-MobApp?node-id=40000001-36083&t=F7glNuLVDi5cXjgn-1.
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Flutter
Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎ
Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ½Π°Ρ
ΠΠΌΠ΅ΡΡΠ΅ ΡΠΎ ΠΌΠ½ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΌΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ(Ρ) Π½Π° flutterflow ΠΈ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ ΠΎΠ±ΡΡΠ°ΡΡ. Π£ΠΆΠ΅ Π½Π°Π±ΡΠΎΡΠΊΠΈ Π΅ΡΡΡ. ΠΠ΄Π΅Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π΅ΡΡΡ. ΠΠ°Π·ΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΎΡΠ½ΠΎΠ² Π΅ΡΡΡ. Π Π°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π» ΡΠ³ Π±ΠΎΡΠΎΠ² Π½Π° low code (Π±Π°Π·ΠΎΠ²ΠΎ ΡΠΌΠ΅Ρ ΡΠΈΡΠ°ΡΡ ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ ΠΊΠΎΠ΄, Π½ΠΎ ΠΎΠΎΡΠ΅Π½Ρ Π±Π°Π·ΠΎΠ²ΠΎ). ΠΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Ρ drag n drop ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΡ, ΡΠ±Π΅ΠΆΠ΄Π΅Π½, ΡΡΠΎ Π·Π° Π½ΠΈΠΌΠΈ Π±ΡΠ΄ΡΡΠ΅Π΅, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ, Π΅ΡΠ»ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ½ΡΡΡ ΠΊΠΎΠ΄, Ρ
ΠΎΡΡ Π±Ρ Π΄Π°ΠΆΠ΅ ΠΊΠΎΡΡΠ²ΡΠΉ ΠΊΠΎΠ΄ (Π° Π½Π° ΡΠ»Π°ΡΡΠ΅ΡΡΠ»ΠΎΡ ΠΌΠΎΠΆΠ½ΠΎ). ΠΠ΅Π· ΠΌΠ΅Π½ΡΠΎΡΠ° Π΄Π°Π»ΡΡΠ΅ Π½Π΅ ΠΌΠΎΠ³Ρ. Π’ΠΎ Π΅ΡΡΡ Π½ΡΠΆΠ½ΠΎ Π΄Π²Π° Π² ΠΎΠ΄Π½ΠΎΠΌ, ΠΈ Π΄Π΅Π»Π°ΡΡ, ΠΈ ΡΡΠΈΡΡ. Π’ΠΎ Π΅ΡΡΡ Π΄Π΅Π»Π°ΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ ΠΏΠΎΠ΄ ΠΏΡΠΈΡΠΌΠΎΡΡΠΎΠΌ ΠΌ ΠΌΠ΅Π½ΡΠΎΡΡΡΠ²ΠΎΠΌ. Π‘ΠΏΠ΅ΡΠΊΠΈ Π½Π΅Ρ, ΡΡΠΎΠΊΠΎΠ² Π½Π΅Ρ, Π΄Π΅Π»Π°Ρ Π΄Π»Ρ ΡΠ΅Π±Ρ. ΠΠΎΠΆΠ΅Π»Π°Π½ΠΈΡ ΠΈ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ: ΠΠΌΠ΅ΡΡΠ΅ ΡΠΎ ΠΌΠ½ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΌΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ(Ρ) Π½Π° flutterflow ΠΈ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ ΠΎΠ±ΡΡΠ°ΡΡ. Π£ΠΆΠ΅ Π½Π°Π±ΡΠΎΡΠΊΠΈ Π΅ΡΡΡ. ΠΠ΄Π΅Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π΅ΡΡΡ. ΠΠ°Π·ΠΎΠ²ΠΎΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΎΡΠ½ΠΎΠ² Π΅ΡΡΡ. Π Π°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π» ΡΠ³ Π±ΠΎΡΠΎΠ² Π½Π° low code (Π±Π°Π·ΠΎΠ²ΠΎ ΡΠΌΠ΅Ρ ΡΠΈΡΠ°ΡΡ ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ ΠΊΠΎΠ΄, Π½ΠΎ ΠΎΠΎΡΠ΅Π½Ρ Π±Π°Π·ΠΎΠ²ΠΎ). ΠΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Ρ drag n drop ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΡ, ΡΠ±Π΅ΠΆΠ΄Π΅Π½, ΡΡΠΎ Π·Π° Π½ΠΈΠΌΠΈ Π±ΡΠ΄ΡΡΠ΅Π΅, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ, Π΅ΡΠ»ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ½ΡΡΡ ΠΊΠΎΠ΄, Ρ
ΠΎΡΡ Π±Ρ Π΄Π°ΠΆΠ΅ ΠΊΠΎΡΡΠ²ΡΠΉ ΠΊΠΎΠ΄ (Π° Π½Π° ΡΠ»Π°ΡΡΠ΅ΡΡΠ»ΠΎΡ ΠΌΠΎΠΆΠ½ΠΎ). ΠΠ΅Π· ΠΌΠ΅Π½ΡΠΎΡΠ° Π΄Π°Π»ΡΡΠ΅ Π½Π΅ ΠΌΠΎΠ³Ρ. Π’ΠΎ Π΅ΡΡΡ Π½ΡΠΆΠ½ΠΎ Π΄Π²Π° Π² ΠΎΠ΄Π½ΠΎΠΌ, ΠΈ Π΄Π΅Π»Π°ΡΡ, ΠΈ ΡΡΠΈΡΡ. Π’ΠΎ Π΅ΡΡΡ Π΄Π΅Π»Π°ΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ ΠΏΠΎΠ΄ ΠΏΡΠΈΡΠΌΠΎΡΡΠΎΠΌ ΠΌ ΠΌΠ΅Π½ΡΠΎΡΡΡΠ²ΠΎΠΌ. Π‘ΠΏΠ΅ΡΠΊΠΈ Π½Π΅Ρ, ΡΡΠΎΠΊΠΎΠ² Π½Π΅Ρ, Π΄Π΅Π»Π°Ρ Π΄Π»Ρ ΡΠ΅Π±Ρ. ΠΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠΏΠ΅Ρ ΠΈΠ· Π‘ΠΠ±. ΠΡΠ»ΠΈ Π΅ΡΠ΅ ΠΈ ΡΠ³ web app ΡΠΌΠ΅Π΅Ρ Π΄Π΅Π»Π°ΡΡ ΠΈ ΡΡΠΈΡΡ, ΡΠΎ ΡΠΎΠ²ΡΠ΅ΠΌ Ρ
ΠΎΡΠΎΡΠΎ.
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Flutter
Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎ
Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ½Π°Ρ
ΠΠΎΠΆΠ΅Π»Π°Π½ΠΈΡ ΠΈ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ: ΠΡΠΆΠ½ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΡΠΎΡΡΠΎΠ΅ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Flutter Π΄Π»Ρ Π·Π°ΡΠΈΡΡ Π΄ΠΈΠΏΠ»ΠΎΠΌΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ. Π’Π΅ΠΌΠ° Π΄ΠΈΠΏΠ»ΠΎΠΌΠ°: Β«Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ Π² ΡΠΎΡΠ³ΠΎΠ²ΠΎΠΌ ΡΠ΅Π½ΡΡΠ΅Β». Π§ΡΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ: 1. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Android (ΡΠΎΠ»ΡΠΊΠΎ Android, iOS Π½Π΅ Π½ΡΠΆΠ½ΠΎ) 2. Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»: - ΠΠ½ΠΎΠΏΠΊΠ° Β«ΠΠ°ΡΠ°ΡΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅Β» β Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΏΠΎΠΈΡΠΊ Bluetooth-ΡΡΡΡΠΎΠΉΡΡΠ² ΠΏΠΎΠ±Π»ΠΈΠ·ΠΎΡΡΠΈ. - Π‘ΠΏΠΈΡΠΎΠΊ Π½Π°ΠΉΠ΄Π΅Π½Π½ΡΡ
ΡΡΡΡΠΎΠΉΡΡΠ² Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ: β’ ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° (Π΅ΡΠ»ΠΈ Π΅ΡΡΡ) β’ MAC-Π°Π΄ΡΠ΅Ρ β’ Π£ΡΠΎΠ²Π΅Π½Ρ ΡΠΈΠ³Π½Π°Π»Π° RSSI (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, -65 dBm) β’ ΠΡΠΈΠΌΠ΅ΡΠ½ΠΎΠ΅ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠ΅ Π² ΠΌΠ΅ΡΡΠ°Ρ
(ΡΠ°ΡΡΡΠΈΡΠ°ΡΡ ΠΏΠΎ ΡΠΎΡΠΌΡΠ»Π΅ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ RSSI) - ΠΠ½ΠΎΠΏΠΊΠ° Β«ΠΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅Β». 3. Π€ΠΎΡΠΌΡΠ»Π° Π΄Π»Ρ ΡΠ°ΡΡΠ΅ΡΠ° ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΡ (ΡΠΏΡΠΎΡΠ΅Π½Π½Π°Ρ): distance = 10 ^ ((txPower - rssi) / (10 * 2)) Π³Π΄Π΅ txPower = -59 dBm (ΡΡΠ°Π»ΠΎΠ½Π½ΡΠΉ ΡΠΈΠ³Π½Π°Π» Π½Π° 1 ΠΌΠ΅ΡΡΠ΅) 4. ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ β ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎΠΉ. ΠΠΎΠ΄ΠΎΠΉΠ΄ΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ Π²ΠΈΠ΄ΠΆΠ΅ΡΡ Flutter. ΠΠΈΠ·Π°ΠΉΠ½ Π½Π΅ Π²Π°ΠΆΠ΅Π½. 5. ΠΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠ°Π±ΠΎΡΠΈΠΌ, Ρ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌΠΈ Π½Π° ΡΡΡΡΠΊΠΎΠΌ ΠΈΠ»ΠΈ Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ. Π§ΡΠΎ ΠΠ Π½ΡΠΆΠ½ΠΎ Π΄Π΅Π»Π°ΡΡ: - ΠΠ΅ Π½ΡΠΆΠ½Π° Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡ ΠΏΠΎ ΠΊΠ°ΡΡΠ΅ - ΠΠ΅ Π½ΡΠΆΠ΅Π½ ΡΠ΅ΡΠ²Π΅Ρ - ΠΠ΅ Π½ΡΠΆΠ½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ
- ΠΠ΅ Π½ΡΠΆΠ½Π° ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡ Π² ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°Ρ
ΠΠ»Π°Π²Π½Π°Ρ ΡΠ΅Π»Ρ: ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠΌΠ΅Π΅Ρ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡ Bluetooth-ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈ ΡΠ°ΡΡΡΠΈΡΡΠ²Π°ΡΡ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠ΅ Π΄ΠΎ Π½ΠΈΡ
.
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Flutter
Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎ
Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ½Π°Ρ
ΠΡΠΆΠ½ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΡΠΎΡΡΠΎΠ΅ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Flutter Π΄Π»Ρ Π·Π°ΡΠΈΡΡ Π΄ΠΈΠΏΠ»ΠΎΠΌΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ. Π’Π΅ΠΌΠ° Π΄ΠΈΠΏΠ»ΠΎΠΌΠ°: Β«Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ Π² ΡΠΎΡΠ³ΠΎΠ²ΠΎΠΌ ΡΠ΅Π½ΡΡΠ΅Β». Π§ΡΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ: 1. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Android (ΡΠΎΠ»ΡΠΊΠΎ Android, iOS Π½Π΅ Π½ΡΠΆΠ½ΠΎ) 2. Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»: - ΠΠ½ΠΎΠΏΠΊΠ° Β«ΠΠ°ΡΠ°ΡΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅Β» β Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΏΠΎΠΈΡΠΊ Bluetooth-ΡΡΡΡΠΎΠΉΡΡΠ² ΠΏΠΎΠ±Π»ΠΈΠ·ΠΎΡΡΠΈ. - Π‘ΠΏΠΈΡΠΎΠΊ Π½Π°ΠΉΠ΄Π΅Π½Π½ΡΡ
ΡΡΡΡΠΎΠΉΡΡΠ² Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ: β’ ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° (Π΅ΡΠ»ΠΈ Π΅ΡΡΡ) β’ MAC-Π°Π΄ΡΠ΅Ρ β’ Π£ΡΠΎΠ²Π΅Π½Ρ ΡΠΈΠ³Π½Π°Π»Π° RSSI (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, -65 dBm) β’ ΠΡΠΈΠΌΠ΅ΡΠ½ΠΎΠ΅ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠ΅ Π² ΠΌΠ΅ΡΡΠ°Ρ
(ΡΠ°ΡΡΡΠΈΡΠ°ΡΡ ΠΏΠΎ ΡΠΎΡΠΌΡΠ»Π΅ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ RSSI) - ΠΠ½ΠΎΠΏΠΊΠ° Β«ΠΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅Β». 3. Π€ΠΎΡΠΌΡΠ»Π° Π΄Π»Ρ ΡΠ°ΡΡΠ΅ΡΠ° ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΡ (ΡΠΏΡΠΎΡΠ΅Π½Π½Π°Ρ): distance = 10 ^ ((txPower - rssi) / (10 * 2)) Π³Π΄Π΅ txPower = -59 dBm (ΡΡΠ°Π»ΠΎΠ½Π½ΡΠΉ ΡΠΈΠ³Π½Π°Π» Π½Π° 1 ΠΌΠ΅ΡΡΠ΅) 4. ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ β ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎΠΉ. ΠΠΎΠ΄ΠΎΠΉΠ΄ΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ Π²ΠΈΠ΄ΠΆΠ΅ΡΡ Flutter. ΠΠΈΠ·Π°ΠΉΠ½ Π½Π΅ Π²Π°ΠΆΠ΅Π½. 5. ΠΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠ°Π±ΠΎΡΠΈΠΌ, Ρ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌΠΈ Π½Π° ΡΡΡΡΠΊΠΎΠΌ ΠΈΠ»ΠΈ Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ. Π§ΡΠΎ ΠΠ Π½ΡΠΆΠ½ΠΎ Π΄Π΅Π»Π°ΡΡ: - ΠΠ΅ Π½ΡΠΆΠ½Π° Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡ ΠΏΠΎ ΠΊΠ°ΡΡΠ΅ - ΠΠ΅ Π½ΡΠΆΠ΅Π½ ΡΠ΅ΡΠ²Π΅Ρ - ΠΠ΅ Π½ΡΠΆΠ½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ
- ΠΠ΅ Π½ΡΠΆΠ½Π° ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡ Π² ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°Ρ
ΠΠ»Π°Π²Π½Π°Ρ ΡΠ΅Π»Ρ: ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠΌΠ΅Π΅Ρ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡ Bluetooth-ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈ ΡΠ°ΡΡΡΠΈΡΡΠ²Π°ΡΡ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠ΅ Π΄ΠΎ Π½ΠΈΡ
.
Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Flutter
Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎ
Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ½Π°Ρ
ΠΡΠΆΠ½ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΡΠΎΡΡΠΎΠ΅ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Flutter Π§ΡΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ: 1. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Android (ΡΠΎΠ»ΡΠΊΠΎ Android, iOS Π½Π΅ Π½ΡΠΆΠ½ΠΎ) 2. Π€ΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»: - ΠΠ½ΠΎΠΏΠΊΠ° Β«ΠΠ°ΡΠ°ΡΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅Β» β Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΏΠΎΠΈΡΠΊ Bluetooth-ΡΡΡΡΠΎΠΉΡΡΠ² ΠΏΠΎΠ±Π»ΠΈΠ·ΠΎΡΡΠΈ. - Π‘ΠΏΠΈΡΠΎΠΊ Π½Π°ΠΉΠ΄Π΅Π½Π½ΡΡ
ΡΡΡΡΠΎΠΉΡΡΠ² Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ: β’ ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° (Π΅ΡΠ»ΠΈ Π΅ΡΡΡ) β’ MAC-Π°Π΄ΡΠ΅Ρ β’ Π£ΡΠΎΠ²Π΅Π½Ρ ΡΠΈΠ³Π½Π°Π»Π° RSSI (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, -65 dBm) β’ ΠΡΠΈΠΌΠ΅ΡΠ½ΠΎΠ΅ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠ΅ Π² ΠΌΠ΅ΡΡΠ°Ρ
(ΡΠ°ΡΡΡΠΈΡΠ°ΡΡ ΠΏΠΎ ΡΠΎΡΠΌΡΠ»Π΅ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ RSSI) - ΠΠ½ΠΎΠΏΠΊΠ° Β«ΠΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅Β». 3. Π€ΠΎΡΠΌΡΠ»Π° Π΄Π»Ρ ΡΠ°ΡΡΠ΅ΡΠ° ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΡ (ΡΠΏΡΠΎΡΠ΅Π½Π½Π°Ρ): distance = 10 ^ ((txPower - rssi) / (10 * 2)) Π³Π΄Π΅ txPower = -59 dBm (ΡΡΠ°Π»ΠΎΠ½Π½ΡΠΉ ΡΠΈΠ³Π½Π°Π» Π½Π° 1 ΠΌΠ΅ΡΡΠ΅) 4. ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ β ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎΠΉ. ΠΠΎΠ΄ΠΎΠΉΠ΄ΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ Π²ΠΈΠ΄ΠΆΠ΅ΡΡ Flutter. ΠΠΈΠ·Π°ΠΉΠ½ Π½Π΅ Π²Π°ΠΆΠ΅Π½. 5. ΠΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠ°Π±ΠΎΡΠΈΠΌ, Ρ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌΠΈ Π½Π° ΡΡΡΡΠΊΠΎΠΌ ΠΈΠ»ΠΈ Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ. Π§ΡΠΎ ΠΠ Π½ΡΠΆΠ½ΠΎ Π΄Π΅Π»Π°ΡΡ: - ΠΠ΅ Π½ΡΠΆΠ½Π° Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡ ΠΏΠΎ ΠΊΠ°ΡΡΠ΅ - ΠΠ΅ Π½ΡΠΆΠ΅Π½ ΡΠ΅ΡΠ²Π΅Ρ - ΠΠ΅ Π½ΡΠΆΠ½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ
- ΠΠ΅ Π½ΡΠΆΠ½Π° ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡ Π² ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°Ρ
ΠΠ»Π°Π²Π½Π°Ρ ΡΠ΅Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ: ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΡΡΠΎ ΠΎΠ½ΠΎ ΡΠΌΠ΅Π΅Ρ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡ Bluetooth-ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈ ΡΠ°ΡΡΡΠΈΡΡΠ²Π°ΡΡ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠ΅ Π΄ΠΎ Π½ΠΈΡ
.