Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
 
 
 
 
 
 

41 Zeilen
1.4 KiB

  1. import 'package:firebase_messaging/firebase_messaging.dart';
  2. class NotificationService {
  3. final FirebaseMessaging _messaging = FirebaseMessaging.instance;
  4. /// درخواست دسترسی به نوتیفیکیشن
  5. Future<void> requestNotificationPermission() async {
  6. NotificationSettings settings = await _messaging.requestPermission(
  7. alert: true,
  8. announcement: false,
  9. badge: true,
  10. carPlay: false,
  11. criticalAlert: false,
  12. provisional: false,
  13. sound: true,
  14. );
  15. if (settings.authorizationStatus == AuthorizationStatus.authorized) {
  16. // print('User granted permission');
  17. } else {
  18. // print('User declined or has not granted permission');
  19. }
  20. }
  21. /// دریافت توکن دستگاه
  22. Future<void> getToken() async {
  23. String? token = await _messaging.getToken();
  24. print("Device Token: $token");
  25. // اینجا می‌توانید توکن را به سرور خود ارسال کنید
  26. }
  27. /// تنظیم Listener برای دریافت نوتیفیکیشن‌ها
  28. void setupMessageListener() {
  29. FirebaseMessaging.onMessage.listen((RemoteMessage message) {
  30. // print('Message received: ${message.notification?.title}');
  31. // print('Message body: ${message.notification?.body}');
  32. // اینجا می‌توانید یک Dialog یا Toast برای نمایش پیام استفاده کنید
  33. });
  34. }
  35. }