What is a notification message in Firebase Cloud Messaging?
A notification message is a message that contains a predefined set of user-visible keys. It is handled by the system when the app is in the background and automatically displays a notification to the user.
Click to reveal answer
beginner
What is a data message in Firebase Cloud Messaging?
A data message contains only custom key-value pairs defined by the developer. It is handled by the app code directly, allowing custom processing whether the app is in the foreground or background.
Click to reveal answer
beginner
How does the app behave when receiving a notification message while in the background?
The system automatically displays the notification to the user without involving the app code, making it simple to show alerts when the app is not active.
Click to reveal answer
intermediate
Can data messages be received and processed when the app is in the background?
Yes, but the app must have code to handle data messages in the background. This allows more control but requires extra setup.
Click to reveal answer
intermediate
Which message type should you use if you want to customize the notification appearance fully?
Use data messages because they let your app handle the message and create a custom notification with any look or behavior you want.
Click to reveal answer
What happens when a notification message arrives while the app is in the background?
AThe message is ignored.
BThe app must process the message to show a notification.
CThe app crashes.
DThe system displays the notification automatically.
✗ Incorrect
Notification messages are handled by the system when the app is in the background, so the notification shows automatically.
Which message type contains only custom key-value pairs without predefined keys?
AData message
BNotification message
CSystem message
DAlert message
✗ Incorrect
Data messages contain only custom data defined by the developer.
If you want to handle messages only when the app is in the foreground, which message type can you use?
ANotification message
BData message
CBoth notification and data messages
DNeither
✗ Incorrect
Both notification and data messages can be handled when the app is in the foreground.
Which message type requires you to write code to display notifications?
AData message
BNotification message
CSystem message
DNone
✗ Incorrect
Data messages require app code to process and display notifications.
What is a key advantage of using data messages over notification messages?
AAutomatic display by the system
BMore control over notification content and behavior
CNo need for app code
DFaster delivery
✗ Incorrect
Data messages let you customize how notifications look and behave by handling them in your app.
Explain the difference between notification messages and data messages in Firebase Cloud Messaging.
Think about who handles the message and when.
You got /4 concepts.
Describe a scenario where you would prefer to use data messages instead of notification messages.
Consider control and customization needs.
You got /4 concepts.
Practice
(1/5)
1. What is the main difference between notification messages and data messages in Firebase Cloud Messaging?
easy
A. Notification messages send silent info, data messages automatically show alerts.
B. Both types always show alerts to users.
C. Notification messages automatically show alerts, data messages send silent info.
D. Data messages cannot send any information.
Solution
Step 1: Understand notification messages
Notification messages are designed to automatically display alerts or notifications to the user without extra coding.
Step 2: Understand data messages
Data messages send information silently to the app, which then decides how to handle or display it.
Final Answer:
Notification messages automatically show alerts, data messages send silent info. -> Option C
Quick Check:
Notification = alert, Data = silent info [OK]
Hint: Notification = alert shown; data = silent info sent [OK]
Common Mistakes:
Confusing which message type shows alerts automatically
Thinking data messages always show notifications
Believing notification messages send silent data only
2. Which of the following is the correct JSON structure for sending a notification message with Firebase Cloud Messaging?
easy
A. { "message": { "alert": "Hello World" } }
B. { "data": { "title": "Hello", "body": "World" } }
C. { "notify": { "title": "Hello", "body": "World" } }
D. { "notification": { "title": "Hello", "body": "World" } }
Solution
Step 1: Identify notification message format
Notification messages use the "notification" key with "title" and "body" fields to show alerts.
Step 2: Check other options for correctness
{ "data": { "title": "Hello", "body": "World" } } uses "data" which is for data messages, not notification messages. Options A and D use invalid keys.
What will happen when the app receives this message?
medium
A. The message will cause an error and not be delivered.
B. The app shows a notification with title and body, and data is available for app logic.
C. The app shows only the data as a notification, ignoring title and body.
D. The app only receives silent data, no notification is shown.
Solution
Step 1: Analyze notification part
The "notification" key causes the system to show a notification with the given title and body automatically.
Step 2: Analyze data part
The "data" key sends extra info silently, which the app can use for logic like opening a product page.
Final Answer:
The app shows a notification with title and body, and data is available for app logic. -> Option B
Quick Check:
Notification shows alert + data sent silently [OK]
Hint: Notification key shows alert; data key sends silent info [OK]
Common Mistakes:
Thinking data messages show notifications automatically
Believing notification messages ignore data payload
Assuming message causes error due to combined keys
4. You sent a data message with this payload:
{ "data": { "score": "100" } }
But the app does not receive it when in background. What is the likely cause?
medium
A. Data messages require app code to handle them; no notification shown automatically.
B. Data messages always show notifications automatically, so this is impossible.
C. You must include a "notification" key for data messages to work.
D. Firebase does not support data messages on Android.
Solution
Step 1: Understand data message behavior
Data messages are silent and require the app's code to process them; if the app is in background, it may not receive them unless handled properly.
Step 2: Check other options
Data messages always show notifications automatically, so this is impossible. is false because data messages do not show notifications automatically. You must include a "notification" key for data messages to work. is incorrect; notification key is not required for data messages. Firebase does not support data messages on Android. is false; Firebase supports data messages on Android.
Final Answer:
Data messages require app code to handle them; no notification shown automatically. -> Option A
Quick Check:
Data messages need app handling [OK]
Hint: Data messages need app code; no auto notification [OK]
Common Mistakes:
Expecting data messages to show notifications automatically
Adding notification key unnecessarily
Believing Firebase lacks data message support
5. You want to send a message that both shows a notification alert and passes extra data to the app for custom handling. Which Firebase message payload is best?
hard
A. { "notification": { "title": "Update", "body": "New version available" }, "data": { "version": "2.0" } }
B. { "data": { "title": "Update", "body": "New version available", "version": "2.0" } }
C. { "notification": { "title": "Update" } }
D. { "message": { "alert": "Update", "info": "2.0" } }
Solution
Step 1: Identify combined message structure
To show a notification and send extra data, the payload must include both "notification" and "data" keys.
Step 2: Evaluate options
{ "notification": { "title": "Update", "body": "New version available" }, "data": { "version": "2.0" } } correctly combines notification alert and data. { "data": { "title": "Update", "body": "New version available", "version": "2.0" } } sends all as data, so no automatic alert. { "notification": { "title": "Update" } } lacks data for extra info. { "message": { "alert": "Update", "info": "2.0" } } uses invalid keys.
Final Answer:
{ "notification": { "title": "Update", "body": "New version available" }, "data": { "version": "2.0" } } -> Option A
Quick Check:
Combine notification + data keys for alert + info [OK]
Hint: Use both notification and data keys to combine alert and info [OK]
Common Mistakes:
Sending all info as data without notification key
Missing data key for extra info
Using invalid keys like "message" or "alert"
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.