يتكون هذا المشروع من وحدتين:
تطبيق ويب مكتوب بلغة C# (ASP.Net)
تطبيق Android مكتوب بلغة Java، الرابط: https://github.com/vsl700/GPSTrackerOnline
الهدف من هذا المشروع، على سبيل المثال، هو مساعدة الآباء على تتبع موقع أطفالهم. وإليك كيف يعمل:
يجب أن تكون الأجهزة التي يتم تعقبها (الخاصة بالأطفال، على سبيل المثال) مثبتة عليها تطبيق "GPS Tracker - Online".
يجب أن يكون المتتبعون (أولياء الأمور) قد قاموا بالتسجيل وتسجيل الدخول في النظام، إما من خلال متصفح الويب أو تطبيق الهاتف المحمول
يجب على المتتبعين إنشاء سجلات للأجهزة المتعقبة في حساباتهم، عن طريق إدخال نوع من الاسم لكل جهاز متتبع ("ابني"، "زوجتي" وما إلى ذلك). يحتوي كل سجل على رمز مكون من 6 أرقام يتم إنشاؤه عشوائيًا
يجب على كل جهاز يتم تعقبه إدخال الرمز المكون من 6 أرقام في البداية حتى يتمكن من الاتصال بجهاز التعقب.
يستطيع المتتبعون رؤية الموقع الحالي للأجهزة المستهدفة، بالإضافة إلى سجل مواقعهم
عند عدم الاستخدام، يمكن إنهاء خدمة تتبع تطبيق الهاتف المحمول لزيادة عمر البطارية
في حالة عدم تشغيل خدمة التتبع على الهاتف المستهدف (نسيت تشغيلها)، يمكن للمتعقب إرسال رسالة نصية قصيرة خاصة إلى الهاتف المستهدف، والتي سيتم اكتشافها بواسطة تطبيق الهاتف المحمول وسيقوم التطبيق بتشغيل الخدمة
في حالة عدم وجود إنترنت على الجهاز المتتبع، يمكن للمتتبع إرسال رسالة نصية قصيرة خاصة إلى الهاتف المستهدف، وفي المقابل سيتلقى المتعقب رسالة نصية قصيرة تحتوي على:
موقع GPS الحالي، بالإضافة إلى سجل المواقع، في حالة توفر خدمة GPS على الهاتف المستهدف
آخر موقع GPS تم اكتشافه، بالإضافة إلى سجل المواقع، في حالة عدم توفر خدمة GPS على الهاتف المستهدف
يستخدم المشروع "SignalR" لاتصال websocket (للموقع الحالي) بين الخادم والأجهزة (المتصفح وتطبيق الهاتف المحمول). يستخدم تطبيق الويب "MS Sql Server 2019" كقاعدة بيانات خاصة به، بينما يستخدم تطبيق الهاتف المحمول "SQLite". الخرائط المستخدمة في صفحة الويب وتطبيق الهاتف المحمول هي من Google.
في الصورة أدناه يمكنك رؤية الطريقة التي تتصل بها الأجهزة المختلفة بتطبيق الويب
(المتصل = المتعقب)
توضح الصورة أدناه بنية قاعدة البيانات لتطبيق الويب (تحتوي جميع الجداول على عمود "المعرف" كمفتاح أساسي)
توضح الصورة أدناه بنية قاعدة البيانات لتطبيق الهاتف المحمول (يحتوي جدول "المواقع" على عمود "المعرف" كمفتاح أساسي)
هنا يمكنك رؤية بعض لقطات الشاشة لتطبيقات الويب والهاتف المحمول
"phone1" و"phone2" متصلان بالإنترنت ويمكن رؤيتهما على الخريطة