اذهب إلى المحتوى
  • 0

كيف يتم عمل خدمة service في flutter

Flutter Dev

السؤال

تحيه طيبه للجميع

ارغب بمعرفة كيفية عمل service  يعمل في خلفية التطبيق بستمرار في فلاتر ياليت اذا احد معه مثال بسيط لعمل ذلك يشاركه معنا ربي يعطيكم العافيه

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 1
بتاريخ 21 دقائق مضت قال مروان مروان3:

ولكن عزيزي انا بياناتي على قاعدة بيانات mysql مثلا التعليقات تحفظ على جدول في هذا القاعدة وانا اريد اعطي المستخدم تنبيه انه فيه تعليق جديد كيف رح اربط الاثنين ؟هل توجد طريقة لذلك

عليك في البداية استخدام Firebase Cloud Messaging.

من ثم يمكنك استدعاء ال API بواسطة PHP من خلال الكود في الأسفل فقط عليك تغير key وtoken

<?php
define('API_ACCESS_KEY','Api key from Fcm add here');
 $fcmUrl = 'https://fcm.googleapis.com/fcm/send';
 $token='235zgagasd634sdgds46436';

     $notification = [
            'title' =>'title',
            'body' => 'body of message.',
            'icon' =>'myIcon', 
            'sound' => 'mySound'
        ];
        $extraNotificationData = ["message" => $notification,"moredata" =>'dd'];

        $fcmNotification = [
            //'registration_ids' => $tokenList, //multple token array
            'to'        => $token, //single token
            'notification' => $notification,
            'data' => $extraNotificationData
        ];

        $headers = [
            'Authorization: key=' . API_ACCESS_KEY,
            'Content-Type: application/json'
        ];


        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL,$fcmUrl);
        curl_setopt($ch, CURLOPT_POST, true);
        curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fcmNotification));
        $result = curl_exec($ch);
        curl_close($ch);


        echo $result;

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

لا توجد طريقة للقيام بذلك مباشرة من flutter في الوقت الحالي على الرغم من أن ذلك قد يتغير في مرحلة ما - يمكنك مراجعة iOS/Android Background Execution. لديك خياران رغم ذلك.

الخيار الأول هو استخدام MethodChannels وكتابة رمز android الذي تريده لإنشاء خدمة في الخلفية.

والخيار الثاني هو مزيج من هذين الملحقين (plugins) - android_alarm_manager و android_intent. لكن هذا لن يساعد في جميع حالات الاستخدام.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 21 دقائق مضت قال Abdulhamid Hamsho:

لا توجد طريقة للقيام بذلك مباشرة من flutter في الوقت الحالي على الرغم من أن ذلك قد يتغير في مرحلة ما - يمكنك مراجعة iOS/Android Background Execution. لديك خياران رغم ذلك.

الخيار الأول هو استخدام MethodChannels وكتابة رمز android الذي تريده لإنشاء خدمة في الخلفية.

والخيار الثاني هو مزيج من هذين الملحقين (plugins) - android_alarm_manager و android_intent. لكن هذا لن يساعد في جميع حالات الاستخدام.

اهلا بك عزيزي

اذا كان لا توجد خدمة  service  كيف يتم عمل نظام الاشعارات اذن للمستخدم في فلاتر؟ 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 11 دقائق مضت قال مروان مروان3:

اهلا بك عزيزي

اذا كان لا توجد خدمة  service  كيف يتم عمل نظام الاشعارات اذن للمستخدم في فلاتر؟ 

يمكنك ذلك من خلال firebase_messaging.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ الآن قال Abdulhamid Hamsho:

يمكنك ذلك من خلال firebase_messaging.

ولكن عزيزي انا بياناتي على قاعدة بيانات mysql مثلا التعليقات تحفظ على جدول في هذا القاعدة وانا اريد اعطي المستخدم تنبيه انه فيه تعليق جديد كيف رح اربط الاثنين ؟هل توجد طريقة لذلك

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

كما الأخ Abdulhamid Hamsho

حالياً لا يمكن..

فقط أريد أن أضيف أن هناك إضافةً أخرى غير التي ذكر..

background_fetch

قد تنفع في مسألتك أكثر

تم التعديل في بواسطة رضوان نسيم
رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ الآن قال Abdulhamid Hamsho:

عليك في البداية استخدام Firebase Cloud Messaging.

من ثم يمكنك استدعاء ال API بواسطة PHP من خلال الكود في الأسفل فقط عليك تغير key وtoken


<?php
define('API_ACCESS_KEY','Api key from Fcm add here');
 $fcmUrl = 'https://fcm.googleapis.com/fcm/send';
 $token='235zgagasd634sdgds46436';

     $notification = [
            'title' =>'title',
            'body' => 'body of message.',
            'icon' =>'myIcon', 
            'sound' => 'mySound'
        ];
        $extraNotificationData = ["message" => $notification,"moredata" =>'dd'];

        $fcmNotification = [
            //'registration_ids' => $tokenList, //multple token array
            'to'        => $token, //single token
            'notification' => $notification,
            'data' => $extraNotificationData
        ];

        $headers = [
            'Authorization: key=' . API_ACCESS_KEY,
            'Content-Type: application/json'
        ];


        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL,$fcmUrl);
        curl_setopt($ch, CURLOPT_POST, true);
        curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fcmNotification));
        $result = curl_exec($ch);
        curl_close($ch);


        echo $result;

 

زادك الله من واسع فضله عزيزي تسلم

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...