Tính năng Gửi thông báo trong ứng dụng Firebase cung cấp một bộ hành vi và loại thông báo hữu ích được định cấu hình trước với giao diện mặc định, nhưng trong một số trường hợp, bạn có thể muốn mở rộng hành vi và nội dung thông báo. Tính năng Gửi thông báo trong ứng dụng cho phép bạn thêm thao tác vào tin nhắn và tuỳ chỉnh giao diện tin nhắn.
Thêm thao tác vào thông báo
Với các hành động, bạn có thể sử dụng thông báo trong ứng dụng để hướng người dùng đến một trang web hoặc một màn hình cụ thể trong ứng dụng.
Triển khai trình xử lý đường liên kết sâu
Firebase In-App Messaging sử dụng trình xử lý đường liên kết để xử lý các thao tác. SDK có thể sử dụng một số trình xử lý, vì vậy, nếu ứng dụng của bạn đã có một trình xử lý, thì Firebase In-App Messaging có thể sử dụng trình xử lý đó mà không cần thiết lập thêm. Nếu chưa có trình xử lý, bạn có thể sử dụng Firebase Dynamic Links. Để tìm hiểu thêm, hãy đọc bài viết Tạo đường liên kết động trên iOS.
Thêm hành động vào tin nhắn bằng bảng điều khiển Firebase
Sau khi ứng dụng của bạn có trình xử lý đường liên kết, bạn đã sẵn sàng soạn một chiến dịch bằng một hành động. Mở bảng điều khiển Firebase để Nhắn tin và bắt đầu chiến dịch mới hoặc chỉnh sửa chiến dịch hiện có. Trong chiến dịch đó, hãy cung cấp Thẻ, Văn bản nút và Hành động của nút, Hành động trên hình ảnh hoặc Hành động trên biểu ngữ, trong đó hành động là một đường liên kết sâu có liên quan.
Định dạng của hành động phụ thuộc vào bố cục thông báo mà bạn chọn. Cửa sổ bật lên sẽ có các nút hành động với nội dung văn bản của nút, màu văn bản và màu nền có thể tuỳ chỉnh. Mặt khác, hình ảnh và biểu ngữ trên cùng sẽ trở nên tương tác và gọi ra hành động đã chỉ định khi được nhấn vào.
Sửa đổi giao diện của thông báo
Firebase In-App Messaging cho phép bạn tuỳ chỉnh màn hình thông báo để thay đổi cách ứng dụng hiển thị bố cục, kiểu phông chữ, hình dạng nút và các thông tin chi tiết khác. Có 2 cách để sửa đổi chế độ hiển thị thông báo: sửa đổi màn hình Firebase In-App Messaging mặc định hoặc tạo thư viện hiển thị thông báo của riêng bạn từ đầu.
Sửa đổi màn hình mặc định
Cách đơn giản nhất để tuỳ chỉnh thông báo là xây dựng dựa trên mã hiển thị thông báo mặc định của Firebase In-App Messaging.
Sao chép kho lưu trữ firebase-ios-sdk
Để bắt đầu, hãy sao chép bản phát hành mới nhất của kho lưu trữ firebase-ios-sdk
và mở thư mục InAppMessaging.
Chọn loại thông báo để sửa đổi
Khi đã nhân bản kho lưu trữ, bạn có thể sửa đổi bất kỳ hoặc tất cả các loại thông báo Firebase In-App Messaging: Card
, Modal
, Banner
và ImageOnly
. Mỗi loại tương ứng với một bố cục thông báo trong quy trình tạo chiến dịch Firebase In-App Messaging.
Do đó, mỗi loại đều có quyền truy cập vào một tập dữ liệu khác nhau, được xác định theo các tuỳ chọn tuỳ chỉnh chiến dịch trong bảng điều khiển Firebase:
Loại | titleText | bodyText | textColor | backgroundColor | dữ liệu hình ảnh | actionButton | PrimaryActionButton (Nút hành động phụ) |
---|---|---|---|---|---|---|---|
Thẻ | |||||||
Cửa sổ bật lên | |||||||
Biểu ngữ | |||||||
ImageOnly |
Sửa đổi mã kết xuất màn hình hiển thị thông báo
Với các giới hạn về loại thông báo, bạn có thể tuỳ ý sửa đổi các loại thông báo đó. Bạn có thể tạo một biểu ngữ hiển thị ở cuối ứng dụng, di chuyển xung quanh nút hành động trên một cửa sổ bật lên, nhúng thông báo trong ứng dụng vào nguồn cấp dữ liệu của người dùng hoặc bất kỳ nội dung sửa đổi nào khác giúp giao diện và cảm nhận của thông báo phù hợp với ứng dụng của bạn.
Có hai điều chính cần chú ý khi sửa đổi chế độ hiển thị thông báo:
- Thư mục loại thông báo: Mỗi loại thông báo có một thư mục riêng với các tệp xác định logic của loại thông báo đó:
- Bảng phân cảnh: Thư viện
InAppMessaging
cũng có một tệp.storyboard
giúp xác định giao diện người dùng cho cả ba loại thông báo:
Sửa đổi các tệp trong thư mục của loại thông báo bạn muốn và các phần tương ứng của .storyboard
để tạo màn hình thông báo tuỳ chỉnh.
Cập nhật tệp podfile để sử dụng mã InAppMessaging
đã sửa đổi
Để Firebase In-App Messaging sử dụng màn hình thông báo đã sửa đổi thay vì màn hình mặc định, hãy cập nhật tệp pod để sử dụng thư viện InAppMessaging
tuỳ chỉnh:
# Uncomment the next line to define a global platform for your project # platform :ios, '9.0' target 'YourProject' do # Comment the next line if you're not using Swift and don't want to use dynamic frameworks use_frameworks! # Pods for YourProject pod 'Firebase' # Remove the default InAppMessaging pod: # pod 'Firebase/InAppMessaging' # Overwrite it with a version that points to your local copy: pod `FirebaseInAppMessaging', :path => '~/Path/To/The/Cloned/Repo/' end
Tạo thư viện hiển thị tin nhắn của riêng bạn
Bạn không bị giới hạn ở việc làm việc trong thư viện InAppMessaging
để tạo giao diện người dùng hiển thị thông báo. Bạn cũng có thể tự viết mã từ đầu.
Tạo một lớp triển khai giao thức InAppMessagingDisplay
Firebase In-App Messaging sử dụng lớp InAppMessaging
để xử lý hoạt động giao tiếp giữa máy chủ Firebase và ứng dụng của bạn. Đổi lại, lớp đó sử dụng giao thức InAppMessagingDisplay
để hiển thị các thông báo nhận được.
Để tạo thư viện hiển thị của riêng bạn, hãy viết một lớp triển khai giao thức.
Định nghĩa giao thức và tài liệu về cách tuân thủ giao thức đó nằm trong tệp FIRInAppMessagingDisplay.h
của thư viện InAppMessaging
.
Đặt messageDisplayComponent
để sử dụng thư viện hiển thị thông báo
InAppMessaging
sử dụng thuộc tính
messageDisplayComponent
để xác định đối tượng
cần sử dụng khi hiển thị thông báo. Đặt thuộc tính đó thành một đối tượng của lớp hiển thị thông báo tuỳ chỉnh để Firebase In-App Messaging biết sử dụng thư viện của bạn để hiển thị thông báo:
InAppMessaging.inAppMessaging().messageDisplayComponent = yourInAppMessagingRenderingInstance