Being cross-platform, Flutter abstracts away Platform APIs, such as iOS, Android, Web, macOS, Windows and Linux. However, there are platform specific differences which will affect how you implement features or develop package plugins.
For example, on iOS, you need to implement didReceive(_:completionHandler:)
in your app's main entrypoint (AppDelegate), where as on Android, you need to declare a Service or Broadcast Receiver in the AndroidManifest.xml
file, and override FirebaseMessagingService
onMessageReceived
method.