العودة لقائمة المشاريع
بناء تطبيق على مستوى النظام يتعامل مع اجهزة BLE Beacons من فلاتر
الميزانية
$250.00 - $500.00
التصنيف
برمجة، تطوير المواقع والتطبيقات
المهارات المطلوبة
برمجة iOS
برمجة التطبيقات
برمجة أندرويد
flutter
إنترنت الأشياء IoT
تصميم تطبيقات
تطوير التطبيقات
إنشاء تطبيق
برمجة iOS
برمجة التطبيقات
برمجة أندرويد
flutter
إنترنت الأشياء IoT
تصميم تطبيقات
تطوير التطبيقات
إنشاء تطبيق
الوصف
أبحث عن مطور فلاتر (Flutter) بمستوى متقدم (Senior) يمتلك خبرة قوية في التعامل مع النظام الأصلي (Native iOS & Android) لبناء تطبيق بسيط جداً (نموذج إثبات مفهوم - PoC).
الهدف الوحيد من التطبيق هو اكتشاف أجهزة البلوتوث (BLE Beacons) وتحديد ما إذا كان المستخدم "داخل النطاق" (Inside Zone) أو "خارج النطاق" (Outside Zone). لا توجد واجهات معقدة، التركيز بالكامل على استقرار عمل التطبيق في الخلفية.
🎯 المتطلبات الأساسية (Core Features):
واجهة بسيطة جداً (UI): شاشة واحدة تحتوي على حالة المستخدم الحالية إما (أنت داخل المنطقة 🟢) أو (أنت خارج المنطقة 🔴).
اكتشاف البلوتوث (BLE Scanning): التطبيق يقوم بالبحث عن Beacon معين (عبر الـ UUID أو MAC Address).
التشغيل العميق على مستوى النظام (Crucial Requirement): - يجب أن يعمل الفحص وتتحدث الحالة عندما يكون التطبيق مفتوحاً (Foreground).
يجب أن يعمل الفحص عندما يكون التطبيق في الخلفية (Background).
(الأهم): يجب أن يستمر التطبيق في التقاط إشارة الـ Beacon حتى لو قام المستخدم بإغلاق التطبيق نهائياً من مدير المهام (Terminated / Killed State)، وإرسال إشعار محلي (Local Notification) عند الدخول أو الخروج من المنطقة.
⚙️ الشروط التقنية:
نظام التشغيل: Android و iOS.
التقنيات المقترحة: يجب استخدام حزم تدعم العمل في الخلفية المغلقة (مثل flutter_background_service مع تعديلات Native، أو الاعتماد على CoreLocation و iBeacon في iOS، و Foreground Service في Android).
يجب التعامل بشكل صحيح مع جميع صلاحيات النظام (Permissions) المطلوبة:
- ACCESS_BACKGROUND_LOCATION و BLUETOOTH_SCAN في الأندرويد.
- Always Allow Location في الـ iOS.
📦 المخرجات المطلوبة (Deliverables):
- الكود المصدري بالكامل (Full Source Code) نظيف وموثق.
- ملف نصي (README) يوضح بدقة التعديلات التي تمت على ملفات الـ Native (مثل Info.plist أو AndroidManifest.xml أو كود Swift/Kotlin) لكي تعمل الخلفية بنجاح.
ملاحظة:
الرجاء عدم التقديم إلا إذا كنت متأكداً 100% من قدرتك على جعل التطبيق يكتشف الـ Beacon وهو في حالة الـ (Terminated / Killed)، خصوصاً على نظام iOS الذي يمتلك قيوداً صارمة في هذا الجانب. الرجاء إرفاق ما يثبت خبرتك في خدمات الخلفية (Background Services) في عرضك.