طريقة عمل tracking او تتبع لموقع المستخدم من قاعة البينانات Data base
يعد هذا الدرس نهاية دورة maping من دروس اندرويد ستوديو , بالنسبه للدروس التي سوف تنشر في هذا القسم سوف تكون لطرق مختلفة او اشياء اكثر تقدما في البرمجة و تطوير تطبيقات الهواتف الذكية وتحسين الماب , ولكن اذا فهمت الدروس السابقه وهذة المقالة سوف تكون قادر على التعامل مع maping بسهوله وهي سهله وغير صعبه ولكنها مطوله قليلا واحببنا ان نشرح كل قسم في مقالة منفصله لكي لا يحدث لخبطة .
عملية تصميم تطبيق اندرويد مجاني ليست صعبه وفي نفس الوقت ليست سهله فالبعض منكم يعتقد تطبيقات أندرويد صعبه ومعقده ولن يتمكن من النجاح في مجال تطوير تطبيقات اندرويد ولكن الامر عكس ذلك وانا كنت واحد منكم صراحة , ولذلك قمت بتاسيس موقع جي كودرس لتعليمكم كيفية تصميم تطبيق اندرويد مجاني وشروحات متنوعه وعديدة في البرمجة واثراء المحتوى العربي بالبرمجة وخاصة مجال تطبيقات أندرويد حيث يعد من اكثر المجالات التي عليها طلب كبير في سوق العمل .
مجال تطبيقات أندرويد واحد من اكبر المجالات التي يبحث عليها كل صاحب شركة تطوير تطبيقات الجوال لان تطوير تطبيقات الهواتف الذكية اصبح يحظى بنسبة كبيره من الاهتمام بسبب كثرة الاجهزة الذكية في الوقت الحالي وايضا تطبيقات أندرويد و تطبيقات الايفون اصبحت كثيرة وتوفر خدمات لنا كمستخدمين توفر علينا كثير من الوقت وهل قد سبق وان خطر ببالك فكرة تطوير تطبيقات الهواتف الذكية تحل مشكلة معينه لم تجد لها حل ؟ قد يكون هذا التطبيق الذي تفكر به واحد من انجح تطبيقات أندرويد ويجني عليك المال الوفير لذلك ابدء بتعلم البرمجة لتنفيذة .
تعد خرائط جوجل من أكثر الخدمات استخدامًا في العالم، حيث تقدم مجموعة واسعة من الميزات والأدوات التي تجعل من السهل على المستخدمين التنقل والتعرف على المناطق المحيطة بهم. يمكن استخدام خرائط جوجل أيضًا لإنشاء تطبيقات ذكية تساعد المستخدمين على الوصول إلى المعلومات والمحتوى بشكل أكثر سهولة.
أهمية خرائط جوجل في تطبيقات أندرويد:
تتمثل أهمية خرائط جوجل في تطبيقات أندرويد في ما يلي:
تساعد المستخدمين على التنقل والتعرف على المناطق المحيطة بهم.
توفر مجموعة واسعة من الميزات والأدوات التي يمكن استخدامها لإنشاء تطبيقات ذكية تفاعلية.
تساعد على زيادة تفاعل المستخدمين مع التطبيق.
خطوات استخدام خرائط جوجل في تطبيقات أندرويد:
يمكن استخدام خرائط جوجل في تطبيقات أندرويد من خلال الخطوات التالية:
- إضافة مكتبة خرائط جوجل إلى المشروع.
- إنشاء الخريطة وإضافة المواقع إليها.
- إضافة التحكم في الخريطة إلى واجهة المستخدم.
- تنفيذ وظائف الخريطة.
- عبارات إضافية يمكن تضمينها في الموضوع:
أنواع تطبيقات أندرويد التي يمكن استخدام خرائط جوجل فيها:
- تطبيقات التنقل
- تطبيقات التوصيل
- تطبيقات السياحة والسفر
- تطبيقات التعليم
- تطبيقات الألعاب
نصائح لبرمجة تطبيقات أندرويد باستخدام خرائط جوجل:
- استخدام مكتبة خرائط جوجل الرسمية.
- اختيار لغة البرمجة المناسبة للمشروع.
- تصميم واجهة مستخدم جذابة وسهلة الاستخدام.
- اختبار التطبيق بعناية قبل نشره.
كيفية تخزين موقع المستخدم في مكان واحد وتحديثة دون تكرار الموقع ؟
لو تتذكر في درس معرفة موقع المستخدم من شروحات تطوير تطبيقات الموبايل وكانت ثالث مقالة على ما اعتقد قمنا بتخزين الموقع على شكل string وكنا نرسله على هيئة map لذلك ارجع الى الكود السابق الموجود في MainActivity بعد ذلك قم بعمل collection وdocument للكود وبعدها في عملية set قم بارسال ServicesLocation(location.getLatitude و location.getLongitude لكي نستقبلهم في MapsActivity .
الكود السابق
firestore.collection("location_user").document("geecoders")
.set(new ServicesLocation(location.getLatitude(),location.getLongitude()));
ارجع الان الى ملف MapsActivity وقم بعمل ميثود اخرى باسم getserviceslocation_user() وبداخلها firebaseFirestore.collection ونكتب اسم الاسم الذي خزنا فيه البيانات وبعدها document وهي الملفات التي بداخل هذا المجلد يجب ان تكون في الارسال والاستقبال نفس الاسم بمعنى انك خزنت الموقع في هذا المسار ايضا عندما تريد جلبه تجلبه من نفس المسار , بعدها عرف ServicesLocation و عمل اختبار if بسيط , وضع العنوان في LatLng بعدها addMarker لوضع علامه على الخريطة واخيرا animateCamera لعمل انميشن للحركة والتوجه اليها مباشره
الكود السابق
private void getserviceslocation_user() {
firebaseFirestore.collection("location_user").document("geecoders").addSnapshotListener(new EventListener<DocumentSnapshot>() {
@Override
public void onEvent(@Nullable DocumentSnapshot document, @Nullable FirebaseFirestoreException error) {
ServicesLocation servicesLocation = document.toObject(ServicesLocation.class);
if (servicesLocation == null) return;
Log.i(TAG, "onEvent: "+servicesLocation);
LatLng latLng = new LatLng(servicesLocation.getLat(),servicesLocation.getLng());
mMap.addMarker(new MarkerOptions().position(latLng));
mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(latLng,17));
}
});
}
اتمنى ان تكون هذة الدروس من تطوير تطبيقات الاندرويد والتعامل مع maps بسهوله تكون افادتكم واتمنى ان اكون قد غطيت كل شيئ , واذا كان لديكم ملاحظات يمكنك ترك لنا تعليق لعمل شروحات اكثر فيها اذا اردتم
لمزيد من اكواد اندرويد ستوديو
- الدرس الاول : كيفية ربط تطبيقك في اندرويد ستوديو بالموقع
- الدرس الثاني : كيفية تخزين موقع المستخدم في الفايربيز بواسطة برنامج أندرويد ستوديو
- الدرس الثالث : كيفية تحديث وتتبع موقع المستخدم باستخدام برنامج اندرويد ستوديو
- الدرس الرابع : كيفية التاكد من تشغيل الموقع على هاتف المستخدم
- الدرس الخامس : ربط تطبيقك في اندرويد ستوديو بجوجل ماب
- الدرس السادس : شرح استخدام جيو كودر geocoder في maping داخل برنامج اندرويد ستوديو
- الدرس السابع : كيفية اضافة نقطة Marker على الخريطة maps داخل برنامج اندرويد ستوديو
- الدرس الثامن : كيفية الحصول على عنوان الموقع من firebase وتحديده على خرائط جوجل
- الدرس التاسع : طريقة عمل tracking او تتبع لموقع المستخدم من قاعة البينانات
- الدرس العاشر : كيفية تغيير شكل العلامه على الخريطة MarkerOptions