โครงการนี้ประกอบด้วยสองโมดูล:
เว็บแอปพลิเคชันที่เขียนด้วยภาษา C# (ASP.Net)
แอปพลิเคชัน Android ที่เขียนด้วย Java ลิงก์: https://github.com/vsl700/GPSTrackerOnline
เป้าหมายของโปรเจ็กต์นี้คือเพื่อช่วยให้ผู้ปกครองติดตามตำแหน่งของบุตรหลาน เป็นต้น นี่คือวิธีการทำงาน:
อุปกรณ์ที่ถูกติดตาม (เช่น เด็กๆ) จะต้องติดตั้งแอปพลิเคชัน 'GPS Tracker - ออนไลน์'
ผู้ติดตาม (ผู้ปกครอง) จะต้องลงทะเบียนและเข้าสู่ระบบผ่านเว็บเบราว์เซอร์หรือแอปมือถือ
เครื่องมือติดตามจะต้องสร้างบันทึกสำหรับอุปกรณ์ที่ถูกติดตามในบัญชีของตน โดยการป้อนชื่อบางประเภทให้กับอุปกรณ์ที่ถูกติดตามแต่ละเครื่อง (เช่น 'ลูกชายของฉัน', 'ภรรยาของฉัน' ฯลฯ) แต่ละบันทึกจะมีรหัส 6 หลักที่สร้างขึ้นแบบสุ่ม
อุปกรณ์ที่ถูกติดตามแต่ละเครื่องจะต้องป้อนรหัส 6 หลักที่เกี่ยวข้องในขั้นต้นเพื่อให้สามารถเชื่อมต่อกับตัวติดตามได้
เครื่องมือติดตามสามารถดูตำแหน่งปัจจุบันของอุปกรณ์เป้าหมายตลอดจนประวัติตำแหน่งของพวกเขา
เมื่อไม่ได้ใช้งาน บริการติดตามของแอปมือถือสามารถยุติลงได้เพื่อยืดอายุแบตเตอรี่
ในกรณีที่บริการติดตามบนโทรศัพท์เป้าหมายไม่ทำงาน (ลืมเปิด) ตัวติดตามสามารถส่ง SMS พิเศษไปยังโทรศัพท์เป้าหมายซึ่งแอพมือถือจะตรวจพบและแอพจะเปิดบริการ
ในกรณีที่ไม่มีอินเทอร์เน็ตบนอุปกรณ์ที่ถูกติดตาม ตัวติดตามสามารถส่ง SMS พิเศษไปยังโทรศัพท์เป้าหมาย และในทางกลับกัน ตัวติดตามจะได้รับ SMS ที่มี:
ตำแหน่ง GPS ปัจจุบัน รวมถึงประวัติตำแหน่ง ในกรณีที่มีบริการ GPS บนโทรศัพท์เป้าหมาย
ตำแหน่ง GPS ที่ตรวจพบล่าสุด รวมถึงประวัติตำแหน่ง ในกรณีที่ไม่มีบริการ GPS บนโทรศัพท์เป้าหมาย
โครงการใช้ 'SignalR' สำหรับการเชื่อมต่อ websocket (สำหรับตำแหน่งปัจจุบัน) ระหว่างเซิร์ฟเวอร์และอุปกรณ์ (เบราว์เซอร์และแอปมือถือ) เว็บแอปพลิเคชันใช้ 'MS Sql Server 2019' เป็นฐานข้อมูล ในขณะที่แอปพลิเคชันมือถือใช้ 'SQLite' แผนที่ที่ใช้ในหน้าเว็บและแอปมือถือมาจาก Google
ในภาพด้านล่าง คุณจะเห็นวิธีที่อุปกรณ์ต่างๆ เชื่อมต่อกับเว็บแอป
(ผู้โทร = ตัวติดตาม)
รูปภาพด้านล่างแสดงโครงสร้างฐานข้อมูลของเว็บแอปพลิเคชัน (ตารางทั้งหมดมีคอลัมน์ 'id' เป็นคีย์หลัก)
รูปภาพด้านล่างแสดงโครงสร้างฐานข้อมูลของแอปพลิเคชันมือถือ (ตาราง 'ตำแหน่ง' มีคอลัมน์ 'id' เป็นคีย์หลัก)
คุณสามารถดูภาพหน้าจอบางส่วนของเว็บและแอปพลิเคชันมือถือได้ที่นี่
'phone1' และ 'phone2' ออนไลน์อยู่และมองเห็นได้บนแผนที่