Base class for receiving messages from Firebase Cloud Messaging.
Extending this class is required to be able to handle downstream messages. It also provides functionality to automatically display notifications, and has methods that are invoked to give the status of upstream messages.
Override base class methods to handle any events required by the application. All methods are invoked on a background thread, and may be called when the app is in the background or not open.
Include the following in the manifest:
<service
android:name=".YourFirebaseMessagingService"
android:exported="false">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT" />
</intent-filter>
</service>
To support receiving messages in direct boot mode, add
android:directBootAware="true" to the service declaration. See Receive
FCM messages in direct boot mode for more information.
| int | START_CONTINUATION_MASK | |
| int | START_FLAG_REDELIVERY | |
| int | START_FLAG_RETRY | |
| int | START_NOT_STICKY | |
| int | START_REDELIVER_INTENT | |
| int | START_STICKY | |
| int | START_STICKY_COMPATIBILITY | |
| int | STOP_FOREGROUND_DETACH | |
| int | STOP_FOREGROUND_REMOVE |
| String | ACCESSIBILITY_SERVICE | |
| String | ACCOUNT_SERVICE | |
| String | ACTIVITY_SERVICE | |
| String | ALARM_SERVICE | |
| String | APPWIDGET_SERVICE | |
| String | APP_OPS_SERVICE | |
| String | AUDIO_SERVICE | |
| String | BATTERY_SERVICE | |
| int | BIND_ABOVE_CLIENT | |
| int | BIND_ADJUST_WITH_ACTIVITY | |
| int | BIND_ALLOW_OOM_MANAGEMENT | |
| int | BIND_AUTO_CREATE | |
| int | BIND_DEBUG_UNBIND | |
| int | BIND_EXTERNAL_SERVICE | |
| int | BIND_IMPORTANT | |
| int | BIND_INCLUDE_CAPABILITIES | |
| int | BIND_NOT_FOREGROUND | |
| int | BIND_NOT_PERCEPTIBLE | |
| int | BIND_WAIVE_PRIORITY | |
| String | BIOMETRIC_SERVICE | |
| String | BLUETOOTH_SERVICE | |
| String | CAMERA_SERVICE | |
| String | CAPTIONING_SERVICE | |
| String | CARRIER_CONFIG_SERVICE | |
| String | CLIPBOARD_SERVICE | |
| String | COMPANION_DEVICE_SERVICE | |
| String | CONNECTIVITY_SERVICE | |
| String | CONSUMER_IR_SERVICE | |
| int | CONTEXT_IGNORE_SECURITY | |
| int | CONTEXT_INCLUDE_CODE | |
| int | CONTEXT_RESTRICTED | |
| String | CROSS_PROFILE_APPS_SERVICE | |
| String | DEVICE_POLICY_SERVICE | |
| String | DISPLAY_SERVICE | |
| String | DOWNLOAD_SERVICE | |
| String | DROPBOX_SERVICE | |
| String | EUICC_SERVICE | |
| String | FINGERPRINT_SERVICE | |
| String | HARDWARE_PROPERTIES_SERVICE | |
| String | INPUT_METHOD_SERVICE | |
| String | INPUT_SERVICE | |
| String | IPSEC_SERVICE | |
| String | JOB_SCHEDULER_SERVICE | |
| String | KEYGUARD_SERVICE | |
| String | LAUNCHER_APPS_SERVICE | |
| String | LAYOUT_INFLATER_SERVICE | |
| String | LOCATION_SERVICE | |
| String | MEDIA_PROJECTION_SERVICE | |
| String | MEDIA_ROUTER_SERVICE | |
| String | MEDIA_SESSION_SERVICE | |
| String | MIDI_SERVICE | |
| int | MODE_APPEND | |
| int | MODE_ENABLE_WRITE_AHEAD_LOGGING | |
| int | MODE_MULTI_PROCESS | |
| int | MODE_NO_LOCALIZED_COLLATORS | |
| int | MODE_PRIVATE | |
| int | MODE_WORLD_READABLE | |
| int | MODE_WORLD_WRITEABLE | |
| String | NETWORK_STATS_SERVICE | |
| String | NFC_SERVICE | |
| String | NOTIFICATION_SERVICE | |
| String | NSD_SERVICE | |
| String | POWER_SERVICE | |
| String | PRINT_SERVICE | |
| int | RECEIVER_VISIBLE_TO_INSTANT_APPS | |
| String | RESTRICTIONS_SERVICE | |
| String | ROLE_SERVICE | |
| String | SEARCH_SERVICE | |
| String | SENSOR_SERVICE | |
| String | SHORTCUT_SERVICE | |
| String | STORAGE_SERVICE | |
| String | STORAGE_STATS_SERVICE | |
| String | SYSTEM_HEALTH_SERVICE | |
| String | TELECOM_SERVICE | |
| String | TELEPHONY_SERVICE | |
| String | TELEPHONY_SUBSCRIPTION_SERVICE | |
| String | TEXT_CLASSIFICATION_SERVICE | |
| String | TEXT_SERVICES_MANAGER_SERVICE | |
| String | TV_INPUT_SERVICE | |
| String | UI_MODE_SERVICE | |
| String | USAGE_STATS_SERVICE | |
| String | USB_SERVICE | |
| String | USER_SERVICE | |
| String | VIBRATOR_SERVICE | |
| String | WALLPAPER_SERVICE | |
| String | WIFI_AWARE_SERVICE | |
| String | WIFI_P2P_SERVICE | |
| String | WIFI_RTT_RANGING_SERVICE | |
| String | WIFI_SERVICE | |
| String | WINDOW_SERVICE |
| int | TRIM_MEMORY_BACKGROUND | |
| int | TRIM_MEMORY_COMPLETE | |
| int | TRIM_MEMORY_MODERATE | |
| int | TRIM_MEMORY_RUNNING_CRITICAL | |
| int | TRIM_MEMORY_RUNNING_LOW | |
| int | TRIM_MEMORY_RUNNING_MODERATE | |
| int | TRIM_MEMORY_UI_HIDDEN |
| void |
onDeletedMessages()
Called when the Firebase Cloud Messaging server deletes pending messages.
|
| void | |
| void | |
| void |
onMessageSent(String msgId)
Called when an upstream message has been successfully sent to the GCM connection server.
|
| void | |
| void |
onSendError(String msgId, Exception exception)
Called when there was an error sending an upstream message.
|
| void | |
| final Application |
getApplication()
|
| final int |
getForegroundServiceType()
|
| abstract IBinder |
onBind(Intent arg0)
|
| void |
onConfigurationChanged(Configuration arg0)
|
| void |
onCreate()
|
| void |
onDestroy()
|
| void |
onLowMemory()
|
| void |
onRebind(Intent arg0)
|
| void |
onStart(Intent arg0, int arg1)
|
| int |
onStartCommand(Intent arg0, int arg1, int arg2)
|
| void |
onTaskRemoved(Intent arg0)
|
| void |
onTrimMemory(int arg0)
|
| boolean |
onUnbind(Intent arg0)
|
| final void |
startForeground(int arg0, Notification arg1)
|
| final void |
startForeground(int arg0, Notification arg1, int arg2)
|
| final void |
stopForeground(int arg0)
|
| final void |
stopForeground(boolean arg0)
|
| final void |
stopSelf()
|
| final void |
stopSelf(int arg0)
|
| final boolean |
stopSelfResult(int arg0)
|
| void |
attachBaseContext(Context arg0)
|
| boolean | |
| boolean | |
| boolean | |
| int |
checkCallingOrSelfPermission(String arg0)
|
| int |
checkCallingOrSelfUriPermission(Uri arg0, int arg1)
|
| int |
checkCallingPermission(String arg0)
|
| int |
checkCallingUriPermission(Uri arg0, int arg1)
|
| int |
checkPermission(String arg0, int arg1, int arg2)
|
| int |
checkSelfPermission(String arg0)
|
| int | |
| int |
checkUriPermission(Uri arg0, int arg1, int arg2, int arg3)
|
| void |
clearWallpaper()
|
| Context |
createConfigurationContext(Configuration arg0)
|
| Context |
createContextForSplit(String arg0)
|
| Context |
createDeviceProtectedStorageContext()
|
| Context |
createDisplayContext(Display arg0)
|
| Context |
createPackageContext(String arg0, int arg1)
|
| String[] |
databaseList()
|
| boolean |
deleteDatabase(String arg0)
|
| boolean |
deleteFile(String arg0)
|
| boolean |
deleteSharedPreferences(String arg0)
|
| void | |
| void | |
| void | |
| void | |
| void | |
| void | |
| void | |
| String[] |
fileList()
|
| Context |
getApplicationContext()
|
| ApplicationInfo |
getApplicationInfo()
|
| AssetManager |
getAssets()
|
| Context |
getBaseContext()
|
| File |
getCacheDir()
|
| ClassLoader |
getClassLoader()
|
| File |
getCodeCacheDir()
|
| ContentResolver |
getContentResolver()
|
| File |
getDataDir()
|
| File |
getDatabasePath(String arg0)
|
| File |
getDir(String arg0, int arg1)
|
| File |
getExternalCacheDir()
|
| File[] |
getExternalCacheDirs()
|
| File |
getExternalFilesDir(String arg0)
|
| File[] |
getExternalFilesDirs(String arg0)
|
| File[] |
getExternalMediaDirs()
|
| File |
getFileStreamPath(String arg0)
|
| File |
getFilesDir()
|
| Executor |
getMainExecutor()
|
| Looper |
getMainLooper()
|
| File |
getNoBackupFilesDir()
|
| File |
getObbDir()
|
| File[] |
getObbDirs()
|
| String |
getOpPackageName()
|
| String |
getPackageCodePath()
|
| PackageManager |
getPackageManager()
|
| String |
getPackageName()
|
| String |
getPackageResourcePath()
|
| Resources |
getResources()
|
| SharedPreferences |
getSharedPreferences(String arg0, int arg1)
|
| Object |
getSystemService(String arg0)
|
| String |
getSystemServiceName(Class<?> arg0)
|
| Resources.Theme |
getTheme()
|
| Drawable |
getWallpaper()
|
| int |
getWallpaperDesiredMinimumHeight()
|
| int |
getWallpaperDesiredMinimumWidth()
|
| void | |
| boolean |
isDeviceProtectedStorage()
|
| boolean |
isRestricted()
|
| boolean | |
| boolean | |
| FileInputStream |
openFileInput(String arg0)
|
| FileOutputStream |
openFileOutput(String arg0, int arg1)
|
| SQLiteDatabase |
openOrCreateDatabase(String arg0, int arg1, SQLiteDatabase.CursorFactory arg2, DatabaseErrorHandler arg3)
|
| SQLiteDatabase | |
| Drawable |
peekWallpaper()
|
| Intent | |
| Intent | |
| Intent | |
| Intent | |
| void |
removeStickyBroadcast(Intent arg0)
|
| void | |
| void |
revokeUriPermission(Uri arg0, int arg1)
|
| void | |
| void | |
| void |
sendBroadcast(Intent arg0)
|
| void | |
| void | |
| void | |
| void | |
| void |
sendOrderedBroadcastAsUser(Intent arg0, UserHandle arg1, String arg2, BroadcastReceiver arg3, Handler arg4, int arg5, String arg6, Bundle arg7)
|
| void |
sendStickyBroadcast(Intent arg0)
|
| void | |
| void |
sendStickyOrderedBroadcast(Intent arg0, BroadcastReceiver arg1, Handler arg2, int arg3, String arg4, Bundle arg5)
|
| void |
sendStickyOrderedBroadcastAsUser(Intent arg0, UserHandle arg1, BroadcastReceiver arg2, Handler arg3, int arg4, String arg5, Bundle arg6)
|
| void |
setTheme(int arg0)
|
| void |
setWallpaper(Bitmap arg0)
|
| void |
setWallpaper(InputStream arg0)
|
| void | |
| void |
startActivities(Intent[] arg0)
|
| void |
startActivity(Intent arg0)
|
| void | |
| ComponentName |
startForegroundService(Intent arg0)
|
| boolean | |
| void | |
| void | |
| ComponentName |
startService(Intent arg0)
|
| boolean |
stopService(Intent arg0)
|
| void |
unbindService(ServiceConnection arg0)
|
| void |
unregisterReceiver(BroadcastReceiver arg0)
|
| void |
updateServiceGroup(ServiceConnection arg0, int arg1, int arg2)
|
| boolean | |
| boolean | |
| abstract boolean | |
| abstract int |
checkCallingOrSelfPermission(String arg0)
|
| abstract int |
checkCallingOrSelfUriPermission(Uri arg0, int arg1)
|
| abstract int |
checkCallingPermission(String arg0)
|
| abstract int |
checkCallingUriPermission(Uri arg0, int arg1)
|
| abstract int |
checkPermission(String arg0, int arg1, int arg2)
|
| abstract int |
checkSelfPermission(String arg0)
|
| abstract int | |
| abstract int |
checkUriPermission(Uri arg0, int arg1, int arg2, int arg3)
|
| abstract void |
clearWallpaper()
|
| abstract Context |
createConfigurationContext(Configuration arg0)
|
| abstract Context |
createContextForSplit(String arg0)
|
| abstract Context |
createDeviceProtectedStorageContext()
|
| abstract Context |
createDisplayContext(Display arg0)
|
| abstract Context |
createPackageContext(String arg0, int arg1)
|
| abstract String[] |
databaseList()
|
| abstract boolean |
deleteDatabase(String arg0)
|
| abstract boolean |
deleteFile(String arg0)
|
| abstract boolean |
deleteSharedPreferences(String arg0)
|
| abstract void | |
| abstract void | |
| abstract void | |
| abstract void | |
| abstract void | |
| abstract void | |
| abstract void | |
| abstract String[] |
fileList()
|
| abstract Context |
getApplicationContext()
|
| abstract ApplicationInfo |
getApplicationInfo()
|
| abstract AssetManager |
getAssets()
|
| abstract File |
getCacheDir()
|
| abstract ClassLoader |
getClassLoader()
|
| abstract File |
getCodeCacheDir()
|
| final int |
getColor(int arg0)
|
| final ColorStateList |
getColorStateList(int arg0)
|
| abstract ContentResolver |
getContentResolver()
|
| abstract File |
getDataDir()
|
| abstract File |
getDatabasePath(String arg0)
|
| abstract File |
getDir(String arg0, int arg1)
|
| final Drawable |
getDrawable(int arg0)
|
| abstract File |
getExternalCacheDir()
|
| abstract File[] |
getExternalCacheDirs()
|
| abstract File |
getExternalFilesDir(String arg0)
|
| abstract File[] |
getExternalFilesDirs(String arg0)
|
| abstract File[] |
getExternalMediaDirs()
|
| abstract File |
getFileStreamPath(String arg0)
|
| abstract File |
getFilesDir()
|
| Executor |
getMainExecutor()
|
| abstract Looper |
getMainLooper()
|
| abstract File |
getNoBackupFilesDir()
|
| abstract File |
getObbDir()
|
| abstract File[] |
getObbDirs()
|
| String |
getOpPackageName()
|
| abstract String |
getPackageCodePath()
|
| abstract PackageManager |
getPackageManager()
|
| abstract String |
getPackageName()
|
| abstract String |
getPackageResourcePath()
|
| abstract Resources |
getResources()
|
| abstract SharedPreferences |
getSharedPreferences(String arg0, int arg1)
|
| final String |
getString(int arg0, Object... arg1)
|
| final String |
getString(int arg0)
|
| final <T> T |
getSystemService(Class<T> arg0)
|
| abstract Object |
getSystemService(String arg0)
|
| abstract String |
getSystemServiceName(Class<?> arg0)
|
| final CharSequence |
getText(int arg0)
|
| abstract Resources.Theme |
getTheme()
|
| abstract Drawable |
getWallpaper()
|
| abstract int |
getWallpaperDesiredMinimumHeight()
|
| abstract int |
getWallpaperDesiredMinimumWidth()
|
| abstract void | |
| abstract boolean |
isDeviceProtectedStorage()
|
| boolean |
isRestricted()
|
| abstract boolean | |
| abstract boolean | |
| final TypedArray |
obtainStyledAttributes(AttributeSet arg0, int[] arg1)
|
| final TypedArray |
obtainStyledAttributes(AttributeSet arg0, int[] arg1, int arg2, int arg3)
|
| final TypedArray |
obtainStyledAttributes(int arg0, int[] arg1)
|
| final TypedArray |
obtainStyledAttributes(int[] arg0)
|
| abstract FileInputStream |
openFileInput(String arg0)
|
| abstract FileOutputStream |
openFileOutput(String arg0, int arg1)
|
| abstract SQLiteDatabase |
openOrCreateDatabase(String arg0, int arg1, SQLiteDatabase.CursorFactory arg2, DatabaseErrorHandler arg3)
|
| abstract SQLiteDatabase | |
| abstract Drawable |
peekWallpaper()
|
| void |
registerComponentCallbacks(ComponentCallbacks arg0)
|
| abstract Intent | |
| abstract Intent | |
| abstract Intent | |
| abstract Intent | |
| abstract void |
removeStickyBroadcast(Intent arg0)
|
| abstract void | |
| abstract void |
revokeUriPermission(Uri arg0, int arg1)
|
| abstract void | |
| abstract void | |
| abstract void |
sendBroadcast(Intent arg0)
|
| abstract void | |
| abstract void | |
| abstract void | |
| abstract void | |
| abstract void |
sendOrderedBroadcastAsUser(Intent arg0, UserHandle arg1, String arg2, BroadcastReceiver arg3, Handler arg4, int arg5, String arg6, Bundle arg7)
|
| abstract void |
sendStickyBroadcast(Intent arg0)
|
| abstract void | |
| abstract void |
sendStickyOrderedBroadcast(Intent arg0, BroadcastReceiver arg1, Handler arg2, int arg3, String arg4, Bundle arg5)
|
| abstract void |
sendStickyOrderedBroadcastAsUser(Intent arg0, UserHandle arg1, BroadcastReceiver arg2, Handler arg3, int arg4, String arg5, Bundle arg6)
|
| abstract void |
setTheme(int arg0)
|
| abstract void |
setWallpaper(Bitmap arg0)
|
| abstract void |
setWallpaper(InputStream arg0)
|
| abstract void | |
| abstract void |
startActivities(Intent[] arg0)
|
| abstract void |
startActivity(Intent arg0)
|
| abstract void | |
| abstract ComponentName |
startForegroundService(Intent arg0)
|
| abstract boolean | |
| abstract void | |
| abstract void | |
| abstract ComponentName |
startService(Intent arg0)
|
| abstract boolean |
stopService(Intent arg0)
|
| abstract void |
unbindService(ServiceConnection arg0)
|
| void |
unregisterComponentCallbacks(ComponentCallbacks arg0)
|
| abstract void |
unregisterReceiver(BroadcastReceiver arg0)
|
| void |
updateServiceGroup(ServiceConnection arg0, int arg1, int arg2)
|
| abstract void |
onTrimMemory(int arg0)
|
| abstract void |
onConfigurationChanged(Configuration arg0)
|
| abstract void |
onLowMemory()
|
Called when the Firebase Cloud Messaging server deletes pending messages. This may be due to:
It is recommended that the app do a full sync with the app server after receiving this call. See here for more information.
Called when a message is received.
This is also called when a notification message is received while the app is in the
foreground. The notification parameters can be retrieved with getNotification().
| message | Remote message that has been received. |
|---|
Called when an upstream message has been successfully sent to the GCM connection server.
| msgId | of the upstream message sent using send(RemoteMessage).
|
|---|
Called when a new token for the default Firebase project is generated.
This is invoked after app install when a token is first generated, and again if the token changes.
| token | The token used for sending messages to this application instance. This token is
the same as the one retrieved by getToken().
|
|---|
Called when there was an error sending an upstream message.
| msgId | of the upstream message sent using send(RemoteMessage). |
|---|---|
| exception | description of the error, typically a SendException.
|