IOS Firebase Support

From RAD Studio
Jump to: navigation, search

The 10.4.2 release, RAD Studio introduces two new features specific to the iOS platform related to Google Firebase support. Between them you can find:

  • The ability to receive push notifications from Firebase, rather than the Apple platform push notifications.
  • The Google Mobile Firebase advertising support on the iOS platform.

Both features have a dependency on Google Firebase SDK for iOS, which is delivered via GetIt.

Firebase Cloud Messaging for iOS

The new unit FMX.PushNotification.FCM.iOS implements Firebase Cloud Messaging push notifications for the iOS platform. The main configuration takes place using the TFcmPushService class, which inherits from its base class TPushService properties like DeviceToken, DeviceID, and the StartupNotifications array.

Firebase MobileAds

Firebase advertising can be activated by dropping on a form, the new iOS-specific component FirebaseBannerAd. The controls are available if the project is currently set to an iOS target.

Firebase Banner Add

The configuration is done via some runtime properties including:

  • AdSize: TFirebaseBannerAdSize
  • AdUnitID: string
  • Model: TCustomFirebaseBannerAdModel
  • TestMode: Boolean

There is a key method, LoadAd, and some event handlers:

  • OnDidDismissScreen
  • OnDidFailToReceiveAd
  • OnDidReceiveAd
  • OnWillDismissScreen
  • OnWillLeaveApplication
  • OnWillPresentScreen

For more information check the FMX.Advertising.Firebase unit.

Firebase SDK via GetIt

To build applications using Firebase on iOS you need to install on your development machine the Firebase SDK provided by Google.

This installation will be provided soon via a specific GetIt package, check the GetIt package manager for availability.

Alternatively, you can accept the license and download the SDK directly from Google see the main Firebase SDK for iOS on the GitHub site:

on a specific download link such as:

You can also get the latest version at

Warning: Downloading the SDK latest version is not recommended, since it is automatically updated over time, and RAD Studio cannot guarantee that the interfaces remain compatible.