initialize method

Future<void> initialize(
  1. dynamic firebaseMessaging, {
  2. String? vapidKey,
  3. AndroidInitializationSettings? androidNotificationSettings,
  4. DarwinInitializationSettings? iOSNotificationSettings,
  5. DarwinInitializationSettings? macOSNotificationSettings,
  6. LinuxInitializationSettings? linuxNotificationSettings,
})

Initialize ParsePush; for web a vapidKey is required.

Implementation

Future<void> initialize(
  firebaseMessaging, {
  String? vapidKey,
  AndroidInitializationSettings? androidNotificationSettings,
  DarwinInitializationSettings? iOSNotificationSettings,
  DarwinInitializationSettings? macOSNotificationSettings,
  LinuxInitializationSettings? linuxNotificationSettings,
}) async {
  // Parse Notification settings
  ParseNotification.instance.setNotificationSettings(
      androidNotificationSettings: androidNotificationSettings,
      iOSNotificationSettings: iOSNotificationSettings,
      linuxNotificationSettings: linuxNotificationSettings,
      macOSNotificationSettings: macOSNotificationSettings);

  // Get Google Cloud Messaging (GCM) token
  firebaseMessaging
      .getToken(vapidKey: vapidKey)
      .asStream()
      .listen((event) async {
    // Set token in installation
    sdk.ParseInstallation parseInstallation =
        await sdk.ParseInstallation.currentInstallation();

    parseInstallation.deviceToken = event;
    parseInstallation.set(keyPushType, keyType);

    await parseInstallation.save();
  });
}