البرمجةفلاتر

الحصول على إحداثيات الموقع الجغرافي لمستخدم تطبيق فلاتر Flutter

الحصول على إحداثيات الموقع الجغرافي لمستخدم تطبيق فلاتر Flutter

اذا كنت بصدد برمجة وتطوير تطبيق يعتمد على الخرائط بدرجة أولى أو تطبيق يختلف محتواه حسب دولة المستخدم، فواحدة من الأولويات، الحصول على إحداثياث الموقع الجغرافي الخاصة بالمستخدم، ولحسن الحظ، وكما هو مألوف عن فريموورك فلاتر-Flutter فالأمر في غاية البساطة ولن يستغرق اكثر من 5 دقائق!

ليتس gيث سطارتد!


إضافة مكتبة Geolocator للتطبيق :

توجه الى ملف pubspec.yaml، وأضف مكتبة geolocator بالشكل التالي :

dependencies:
__flutter:
____sdk: flutter
__cupertino_icons: ^0.1.2
__geolocator: ^5.1.5

سنحتاج الأن الى إضافة الأذونات للأندرويد وال Ios، ذلك عن طريق تعديل ملفي ios/Runner/Info.plist و android/appsrc/main/AndroidManifest.xml.

إضافة اذونات ال ios

توجه لهذا المسار ios/Runner/Info.plist، وافتح ملف info.plist، ثم اضف السطرين التالين, يمكنك طبعا تعديل نص الرسالة بين وسمي “string” :

<key>NSLocationWhenInUseUsageDescription</key>
<string>This app needs access to location when open.</string>

إضافة اذونات ال android

توجه لهذا المسار android/appsrc/main/AndroidManifest.xml, وافتح ملف AndroidManifest.xml، ثم أضف السطرين التاليين :

<uses-permission android:name=”android.permission.ACCESS_FINE_LOCATION”/>
<uses-permission android:name=”android.permission.ACCESS_COARSE_LOCATION”/>

بعد ان إنتهينا من اضافة الاذونات و مكتبة Geolocator، لنتعرف على طريقة استخدامها.

واجهة التطبيق :

واجهة التطبيق بسيطة جدا، وتتكون من زر واحد و Widget نصية فارغة، الزر متصل بدالة للحصول على الإحداثيات وسنبرمجها لاحقا, أما ال Widget النصية فسيتم طباعة الاحداثيات عليها.

الحصول على الموقع الحالي

بعد ان انتهينا من الواجهة, وقبل أن نقوم ببرمجة الدالة _getCurrentLocation المسؤوولة عن عرض الإحداثيات, نقوم أولا بإنشاء اوبجكت من الكلاس Position داخل ويدجيت MyApp, المتغيير سنقوم لاحقا بتمريره للدالة السابق ذكرها.

الأن نقوم ببرمجة دالة _getCurrentLocation على الشكل التالي :

بعد ذلك نقوم بالتعديل على ويدجيت النص بواجهة التطبيق، وذلك للحصول على الإحداثيات الموجودة ب _currentPosition الذي انشأناه سابقا.

لاحظ أننا اضفنا شرط للتحقق من محتوى _currentPostion حتى لاتحدث مشاكل في حال كان فارغ، الان عند الضغط على الزر، ستظهر رسالة لإعطاء صلاحية الحصول على الموقع للتطبيق, فور الموافقة ستظر الاحداثيات على الشاشة.

صورة للتطبيق :

النسخة الكاملة من كود التطبيق :

يمكنك أيضا تحميل التطبيق مفتوح المصدر من موقع Github على الرابط التالي.

مزيد من المقالات عن فريموورك فلاتر – Flutter .

ابراهيم

مغربي, 24 سنة, مبرمج ومطور تطبيقات الموبايل, مصمم واجهات مستخدم
زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

برجاء دعمنا عن طريق تعطيل إضافة Adblock