Computer >> Hướng Dẫn Máy Tính >  >> Hệ Thống >> Android

Tích hợp Firebase Cloud Messaging trong Flutter: Hướng dẫn từng bước

Tích hợp Firebase Cloud Messaging trong Flutter: Hướng dẫn từng bước

Trong bối cảnh ứng dụng mobile cạnh tranh cao ngày nay, thu hút hiệu quả user và доставка thông tin đúng lúc là chìa khóa.

Firebase Cloud Messaging (FCM) là dịch vụ push notification mạnh mẽ do Firebase cung cấp. Nó cung cấp cách seamless kết nối với user app và giữ họ engaged.

Trong tutorial này, chúng ta sẽ đi sâu tích hợp FCM trong Flutter. Khám phá lợi ích và showcase ví dụ thực tế cách nó nâng cao user engagement và cải thiện hiệu suất app.

Firebase Cloud Messaging (FCM) cung cấp kết nối tin cậy và tiết kiệm pin giữa server và thiết bị. Cho phép gửi và nhận message/notification trên iOS, Android, và web hoàn toàn miễn phí.

Trong tutorial này, chúng ta sẽ khám phá quá trình setup và dùng FCM trong Flutter dùng Firebase làm backend service. Mặc dù focus chính là Android, quá trình tương tự cho iOS và Android (với vài khác biệt config).

Nội dung bao gồm:

  1. Cách tạo app trong Firebase
  2. Cách setup Firebase trong Flutter
  3. Cách implement push notification dùng FCM token

Trong tutorial này, bạn sẽ học cách gửi notification đơn giản dùng Firebase đến app chạy Flutter. Bắt đầu nào.

Cách tạo app trong Firebase

Tôi tạo project mới trong Firebase console để bắt đầu. Sẽ đi qua các bước cần thiết: setup project, cấu hình Firebase Cloud Messaging, và lấy credentials và file config cần thiết cho Flutter app.

Trước khi tạo app, cần signup Firebase console nếu chưa có account. Sau signup, thử tạo project.

Tích hợp Firebase Cloud Messaging trong Flutter: Hướng dẫn từng bước Tạo Project trong Firebase

Sẽ mất chút thời gian tạo project.

Tích hợp Firebase Cloud Messaging trong Flutter: Hướng dẫn từng bước Đang tạo project trong Firebase

Sau khi tạo project, nó redirect đến dashboard project.

Tích hợp Firebase Cloud Messaging trong Flutter: Hướng dẫn từng bước Tổng quan Project trong Firebase Console

Sau khi tạo project Firebase console, đến lúc bắt đầu với Flutter app.

Cách setup Firebase trong Flutter

Tôi tạo Flutter project đơn giản dùng Visual Studio Code. Nếu chưa quen build Flutter project, tham khảo tutorial trước. (Nếu đã quen, bỏ qua bước này.)

Tích hợp Firebase Cloud Messaging trong Flutter: Hướng dẫn từng bước Flutter App đơn giản chạy trên thiết bị Android

Hãy tích hợp Firebase vào Flutter project. Cần Firebase CLI command line tool. Tôi đã cài Firebase CLI. Nếu chưa, tham khảo tài liệu chính thức.

Sau đó cần login Firebase dùng Firebase CLI.

firebase login 

Tích hợp Firebase Cloud Messaging trong Flutter: Hướng dẫn từng bước Login Firebase dùng FirebaseCLI

Sẽ navigate đến browser login Firebase. Quay lại sau khi authentication thành công.

Sau login thành công, cần cài FlutterFire CLI. Dùng FlutterFire CLI config Flutter app kết nối Firebase. Chạy lệnh sau activate FlutterFire CLI:

dart pub global activate flutterfire_cli 

FlutterFire CLI là tool command-line interface đơn giản hóa tích hợp Firebase service vào Flutter app. Cung cấp cách tiện lợi add, config, manage Firebase plugin trong Flutter project.

Tích hợp Firebase Cloud Messaging trong Flutter: Hướng dẫn từng bước Cài FlutterFireCLI

Bước tiếp theo thêm thư viện firebase_core vào Flutter project.

Lệnh sau tự động thêm package firebase_core làm dependency trong pubspec.yaml và fetch phiên bản mới từ pub.dev. Sau chạy lệnh, bạn import firebase_core vào file Dart và dùng Firebase service trong Flutter app.

flutter pub add firebase_core 

Tích hợp Firebase Cloud Messaging trong Flutter: Hướng dẫn từng bước Cài package Firebase Core

Lệnh flutterfire configure dùng config Firebase service trong Flutter project dùng FlutterFire CLI. Lệnh này giúp setup Firebase auth, Firestore, Cloud Messaging, và service Firebase khác dễ dàng hiệu quả.

flutterfire configure 

Bước đầu chọn project,

Tích hợp Firebase Cloud Messaging trong Flutter: Hướng dẫn từng bước Kết nối Flutter App với Firebase app

Bước tiếp chọn platform. Tôi dùng Android ở đây, nên chọn Android.

Tích hợp Firebase Cloud Messaging trong Flutter: Hướng dẫn từng bước Chọn platform

Sau config thành công, Firebase App Id hiển thị.

Cuối cùng, cần thêm code vào file main.dart.

Import package sau:

import 'package:firebase_core/firebase_core.dart'; import 'firebase_options.dart'; 

Thêm config sau khởi tạo Firebase config trong hàm main của main.dart.

await Firebase.initializeApp( options: DefaultFirebaseOptions.currentPlatform, ); 

Good, chúng ta đã hoàn thành config Firebase trong Flutter app! Hãy chúc mừng milestone này. Config Firebase service là bước quan trọng xây dựng app mạnh mẽ và giàu tính năng.

Cách implement Push Notification dùng FCM Token

Chúng ta sẽ implement quá trình đăng ký thiết bị nhận push notification và lấy FCM token duy nhất gán cho mỗi thiết bị. Bước này quan trọng để gửi notification nhắm mục tiêu đến thiết bị cụ thể.

Chúng ta sẽ đi sâu implement gửi push notification đến thiết bị dùng FCM. Khám phá cách cấu trúc và gửi notification message từ Firebase console và demo cách handle message trong Flutter app.

flutter pub add firebase_messaging 

Tích hợp Firebase Cloud Messaging trong Flutter: Hướng dẫn từng bước Cài package firebase messaging

Tiếp theo, cần trigger hàm setAutoInitEnabled bật tự động khởi tạo FCM trong Flutter app. Nghĩa là FCM tự động init và lấy device token khi app start.

Thêm gọi hàm sau trong method main:

import 'package:firebase_messaging/firebase_messaging.dart'; ... ... await FirebaseMessaging.instance.setAutoInitEnabled(true); 

Chạy Flutter app và verify nhận notification.

Điều hướng đến Firebase messaging console. Vì là tin nhắn đầu, chọn "Create your first campaign". Chọn "Firebase Notification messages" và bấm "Create".

Tích hợp Firebase Cloud Messaging trong Flutter: Hướng dẫn từng bước Template test messaging mẫu

Giờ nhập title, text, và tên cho message.

Sau đó lấy FCM token thủ công cho test dùng code dưới. Để lấy registration token hiện tại cho app instance, gọi getToken() trong main(). Method này hỏi permission notification nếu chưa granted. Ngược lại, trả token hoặc reject nếu lỗi.

final fcmToken = await FirebaseMessaging.instance.getToken(); log("FCMToken $fcmToken"); 

Copy FCM token in trên console và dán vào ô "Add an FCM registration token".

Tích hợp Firebase Cloud Messaging trong Flutter: Hướng dẫn từng bước Gửi test message dùng FCM Token

Bấm nút Test. Thiết bị client target (với app ở background) sẽ nhận notification.

Tích hợp Firebase Cloud Messaging trong Flutter: Hướng dẫn từng bước Nhận push notification trên thiết bị android

Hurray! Chúng ta nhận notification trên Android device. Click notification sẽ mở app mặc định.

Khi tap notification, hành vi mặc định trên Android và iOS là mở app. Nếu app terminated, sẽ start. Nếu background, sẽ bring to foreground.

Ở đây, thấy config cơ bản khởi tạo Firebase messaging.

main.dart

 import 'package:flutter/material.dart'; import 'package:firebase_core/firebase_core.dart'; import 'package:firebase_messaging/firebase_messaging.dart'; import 'firebase_options.dart'; void main() async { runApp(const MyApp()); await Firebase.initializeApp( options: DefaultFirebaseOptions.currentPlatform, ); final fcmToken = await FirebaseMessaging.instance.getToken(); await FirebaseMessaging.instance.setAutoInitEnabled(true); log("FCMToken $fcmToken"); } 

Kết luận

Trong tutorial này chúng ta đã cover bước thiết yếu implement push notification trong Flutter dùng Firebase Cloud Messaging (FCM).

Bằng cách follow các bước outlined, bạn có thể setup Firebase, tích hợp vào Flutter project, và implement chức năng push notification.

Với khả năng gửi và nhận notification seamless, bạn có thể nâng cao trải nghiệm user và engage hiệu quả với user app. Hẹn gặp lại chủ đề nâng cao hơn trong tutorial tương lai.

Nếu muốn học thêm về Flutter, đăng ký bản tin email (https://5minslearn.gogosoon.com/) và theo dõi tôi trên mạng xã hội.

Học lập trình miễn phí. Chương trình mở của freeCodeCamp đã giúp hơn 40.000 người có việc làm developer. Bắt đầu ngay