Mohammed Abu Yousef نشر 19 أبريل 2021 أرسل تقرير نشر 19 أبريل 2021 أريد عند الضغط على الزر المشار إليه في الصورة: - طلب فتح ال GPS وطلب السماح للتطبيق بالوصول إليه ( إن لم يكن كذلك ). - الانتقال إلى المكان الذي يتواجد فيه المستخدم. ملاحظة / جربت العديد من الحلول، لكن للأسف، فأرجو أن يكون الحل المطروح مجرب ومضمون. اقتباس
0 بلال زيادة نشر 20 أبريل 2021 أرسل تقرير نشر 20 أبريل 2021 اقتباس - طلب فتح ال GPS وطلب السماح للتطبيق بالوصول إليه ( إن لم يكن كذلك ). ستقوم بتثبيت حزمة geolocator ثم تعمل check على gps و تظهر رسالة إذا لم يكن مفعل بهذا الشكل var isGpsEnabled = await Geolocator().isLocationServiceEnabled(); Future _checkGps() async { if (!(await Geolocator().isLocationServiceEnabled())) { if (Theme.of(context).platform == TargetPlatform.android) { showDialog( context: context, builder: (BuildContext context) { return AlertDialog( title: Text("لا يمكن جلب الموقع الحالي"), content: const Text('الرجاء تفعيل GPS'), actions: <Widget>[ FlatButton( child: Text('Ok'), onPressed: () { final AndroidIntent intent = AndroidIntent( action: 'android.settings.LOCATION_SOURCE_SETTINGS'); intent.launch(); Navigator.of(context, rootNavigator: true).pop(); }, ), ], ); }, ); } } } اقتباس - الانتقال إلى المكان الذي يتواجد فيه المستخدم. ستقوم بتثبيت الحزمتين google_maps_flutter location يمكنك البحث عنهما من خلال موقع pub.dev من هنا. في المسار التالي android/app/src/main/directory. ستقوم بفتح ملف AndroidManifest.xml ستقوم بوضع التالي <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> import 'package:flutter/material.dart'; import 'package:google_maps_flutter/google_maps_flutter.dart'; import 'package:location/location.dart'; void main() { runApp(MyApp()); } class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( debugShowCheckedModeBanner: false, home: MyHomePage(), ); } } class MyHomePage extends StatefulWidget { @override _MyHomePageState createState() => _MyHomePageState(); } class _MyHomePageState extends State<MyHomePage> { LatLng _initialcameraposition = LatLng(20.5937, 78.9629); GoogleMapController _controller; Location _location = Location(); void _onMapCreated(GoogleMapController _cntlr) { _controller = _cntlr; _location.onLocationChanged.listen((l) { _controller.animateCamera( CameraUpdate.newCameraPosition( CameraPosition(target: LatLng(l.latitude, l.longitude),zoom: 15), ), ); }); } @override Widget build(BuildContext context) { return Scaffold( body: Container( height: MediaQuery.of(context).size.height, width: MediaQuery.of(context).size.width, child: Stack( children: [ GoogleMap( initialCameraPosition: CameraPosition(target: _initialcameraposition), mapType: MapType.normal, onMapCreated: _onMapCreated, myLocationEnabled: true, ), ], ), ), ); } } في الكود إعلاه هنا يتم وضع Lat , lng إفتراضي, ثم يأتي دور دالة _onMapCreated كلما تغير موقع الجهاز, سيتم نقل الكاميرا إلى الموقع الجديد. أخبرنا إلى أين وصلت في الكود الخاص بك و ما هي المشاكل وسنساعدك بإذن الله. 1 اقتباس
0 Mohammed Abu Yousef نشر 20 أبريل 2021 الكاتب أرسل تقرير نشر 20 أبريل 2021 بسم الله، نبدأ بعرض الأخطاء بالتدريج: - في أول طلبتها مني، وضع الدالة، تمام، عندما وضعتها تظهر بالصورة التالية: ( لم يتم التعرف على بعض الخصائص ) اقتباس
0 Mohammed Abu Yousef نشر 20 أبريل 2021 الكاتب أرسل تقرير نشر 20 أبريل 2021 (معدل) بتاريخ منذ ساعة مضت قال Mohammed Abu Yousef: بسم الله، نبدأ بعرض الأخطاء بالتدريج: - في أول طلبتها مني، وضع الدالة، تمام، عندما وضعتها تظهر بالصورة التالية: ( لم يتم التعرف على بعض الخصائص ) وبالنسبة للخطوة الثانية ( على فرض أني قد قمت بتشغيل ال GPS بشكل يدوي ) فإن الخريطة تظهر، ويظهر أيضًا الزر للضغط، وعندما أقوم بالضغط لا يحدث شيء تم التعديل في 20 أبريل 2021 بواسطة Mohammed Abu Yousef اقتباس
0 بلال زيادة نشر 20 أبريل 2021 أرسل تقرير نشر 20 أبريل 2021 بتاريخ 1 ساعة قال Mohammed Abu Yousef: بسم الله، نبدأ بعرض الأخطاء بالتدريج: - في أول طلبتها مني، وضع الدالة، تمام، عندما وضعتها تظهر بالصورة التالية: ( لم يتم التعرف على بعض الخصائص ) تمام, يبدو أنك لم تقم بجلب حزمة Geolocator بشكل مناسب لأنه الخصائص هذه من الحزمة يمكنك مراجعة التوثيق من هنا, وجميع الخصائص الموجودة في الكود يمكنك التحقق منها ايضا. بتاريخ 28 دقائق مضت قال Mohammed Abu Yousef: وبالنسبة للخطوة الثانية ( على فرض أني قد قمت بتشغيل ال GPS بشكل يدوي ) فإن الخريطة تظهر، ويظهر أيضًا الزر للضغط، وعندما أقوم بالضغط لا يحدث شيء لم أنشئ لك كود كامل لأخفاء و إظهار الخريطة , قمت فقط بوضع كود ليفحص GPS إذا شغال أو لا, باقي التفاصيل يمكنك تطبيقها بناءاً على ما تريد. بما أنه يمكنك فحص و معرفة حالة GPS يمكنك التحكم في إظهار و إخفاء الخريطة كما تريد. 1 اقتباس
0 Mohammed Abu Yousef نشر 20 أبريل 2021 الكاتب أرسل تقرير نشر 20 أبريل 2021 (معدل) بتاريخ 1 ساعة قال بلال زيادة: تمام, يبدو أنك لم تقم بجلب حزمة Geolocator بشكل مناسب لأنه الخصائص هذه من الحزمة يمكنك مراجعة التوثيق من هنا, وجميع الخصائص الموجودة في الكود يمكنك التحقق منها ايضا. يبدو أن هناك فرق في ال syntax بين إصدارات هذه المكتبة، الجواب الذي أرسلته بأي إصدار؟ - هل يمكن استبدال هذه المكتبة بمكتبة أخرى تؤدي نفس الوظيفة؟ وإذا كان الجواب ب نعم فما هي الاقترحات؟ لأني الصراحة تعبت منها كتير تم التعديل في 20 أبريل 2021 بواسطة Mohammed Abu Yousef إضافة سؤال اقتباس
0 Mohammed Abu Yousef نشر 20 أبريل 2021 الكاتب أرسل تقرير نشر 20 أبريل 2021 الحمد لله قمت باستعمال حزمة location ونجحت بحمد الله لكن عندي سؤال ( كما يظهر في الصورة المرفقة / عملية الانتقال إلى موقعي تتحقق سواء بالضغظ على الزر رقم 1 أو الزر رقم 3 ) - عند تفعيل الزر رقم 1 ( يتم إضافة دائرة زرقاء عند موقعي بالإضافة إلى سهم ) - أريد هذه الخصائص مع الزر رقم ثلاثة، وإخفاء الزر رقم 1 اقتباس
0 بلال زيادة نشر 21 أبريل 2021 أرسل تقرير نشر 21 أبريل 2021 بتاريخ 6 ساعات قال Mohammed Abu Yousef: الحمد لله قمت باستعمال حزمة location ونجحت بحمد الله لكن عندي سؤال ( كما يظهر في الصورة المرفقة / عملية الانتقال إلى موقعي تتحقق سواء بالضغظ على الزر رقم 1 أو الزر رقم 3 ) - عند تفعيل الزر رقم 1 ( يتم إضافة دائرة زرقاء عند موقعي بالإضافة إلى سهم ) - أريد هذه الخصائص مع الزر رقم ثلاثة، وإخفاء الزر رقم 1 لا يوجد صورة مرفقة, أرجوا ان تقوم بإرفاقها. 1 اقتباس
0 Mohammed Abu Yousef نشر 21 أبريل 2021 الكاتب أرسل تقرير نشر 21 أبريل 2021 بتاريخ 35 دقائق مضت قال بلال زيادة: لا يوجد صورة مرفقة, أرجوا ان تقوم بإرفاقها. فعلا، نسيت، جهزتها ونسيت إرفاقها، ها هي: اقتباس
السؤال
Mohammed Abu Yousef
أريد عند الضغط على الزر المشار إليه في الصورة:
- طلب فتح ال GPS وطلب السماح للتطبيق بالوصول إليه ( إن لم يكن كذلك ).
- الانتقال إلى المكان الذي يتواجد فيه المستخدم.
ملاحظة / جربت العديد من الحلول، لكن للأسف، فأرجو أن يكون الحل المطروح مجرب ومضمون.
8 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.